Merhaba arkadaşlar
imdb.com üzerinden kategorize şekilde veri çekilip manuel olarak tek tek düzenleme imkanı sağlayıp yine manuel oalrak post ettireceğim bir scripte bota ihtiyacım var
ilgilenen arkadaşlar yazabilir mi , detay vereyim
ihtiyacım olan apisiz yazabileceklerdir
PHP veya C# farketmez script ihtiyacı
4
●220
- 25-03-2023, 01:50:24Dilerseniz C# ile yazabilirim. chatbotlara bile sorsak neredeyse hallediyorlar. Dilerseniz imza bölümündeki iletişim numarasından ulaşabilirsiniz.
Aşağıda chatbot'un verdiği örnekten de faydalanabilirsiniz;
Tabii, aşağıdaki örnek kod C# Forms uygulaması olarak imdb.com'dan veri çeker ve bu verileri MySQL veritabanına kaydeder. Öncelikle, projenize MySQL.Data NuGet paketini yükleyin. Daha sonra, bir MySQL veritabanı oluşturun ve bu veritabanına bağlanmak için gerekli bilgileri C# kodunda kullanın. Aşağıdaki örnek kodda, IMDb filmlerinin isimleri ve puanlarını içeren bir DataTable oluşturuyoruz. Daha sonra, DataTable'ı MySQL veritabanına kaydediyoruz. using System; using System.Data; using System.Windows.Forms; using MySql.Data.MySqlClient; namespace ImdbScraper { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { // IMDb'den verileri çek DataTable dt = GetImdbData(); // Verileri MySQL veritabanına kaydet string connStr = "server=localhost;user=root;database=mydb;port=3306;password=mypassword;"; MySqlConnection conn = new MySqlConnection(connStr); conn.Open(); foreach (DataRow row in dt.Rows) { string title = row["Title"].ToString(); string rating = row["Rating"].ToString(); string query = "INSERT INTO movies (title, rating) VALUES (@title, @rating)"; using (MySqlCommand cmd = new MySqlCommand(query, conn)) { cmd.Parameters.AddWithValue("@title", title); cmd.Parameters.AddWithValue("@rating", rating); cmd.ExecuteNonQuery(); } } conn.Close(); MessageBox.Show("Veriler başarıyla kaydedildi."); } private DataTable GetImdbData() { using (WebClient client = new WebClient()) { // Web sayfasına istek gönder string url = "https://www.imdb.com/chart/top"; string html = client.DownloadString(url); // HTML içeriğini bir belge olarak yükle HtmlDocument doc = new HtmlDocument(); doc.LoadHtml(html); // XPath ifadesi kullanarak filmleri seç string xpath = "//td[@class='titleColumn']/a"; HtmlNodeCollection titleNodes = doc.DocumentNode.SelectNodes(xpath); xpath = "//td[@class='ratingColumn imdbRating']/strong"; HtmlNodeCollection ratingNodes = doc.DocumentNode.SelectNodes(xpath); // DataTable oluştur DataTable dt = new DataTable(); dt.Columns.Add("Title"); dt.Columns.Add("Rating"); // Filmlerin isimlerini ve puanlarını ekle for (int i = 0; i < titleNodes.Count; i++) { string title = titleNodes[i].InnerText.Trim(); string rating = ratingNodes[i].InnerText.Trim(); dt.Rows.Add(title, rating); } return dt; } } } } Bu örnek kodda, Form1_Load olayında GetImdbData metodu ile IMDb'den verileri çekiyoruz. Daha sonra, verileri MySQL veritabanına kaydediyoruz. Veritabanı bağlantısını açmak için gerekli bilgileri connStr değişkeninde belirtiyoruz. MySQL veritabanına kaydetmek için, DataTable'ı döngü ile dolaşıyoruz ve her bir veri için bir INSERT sorgusu oluşturuyoruz. Bu sorguyu MySqlCommand nesnesi ile MySQL veritabanına gönderiyoruz. Sonuç olarak, bu örnek kodu kullanarak IMDb'den veri çekebilir ve bu verileri MySQL veritabanına kaydedebilirsiniz.