Resimler gönderiler için kullanışlıdır. Ancak mümkün olduğunca az ve / veya küçük resimler kullanmak gerekir.
Bilgisayardaki bir hata mesajı veya kodu resim olarak eklemek yerine kendisini
kopyalayıp yapıştırın.
Resimler gönderiler için kullanışlıdır. Ancak mümkün olduğunca az ve / veya küçük resimler kullanmak gerekir.
Bilgisayardaki bir hata mesajı veya kodu resim olarak eklemek yerine kendisini
kopyalayıp yapıştırın.
0
c# döngü ile xpath değiştirmek
Merhaba. Bu projem çalısıyor ama sadece 1 bilgi alabiliyorum. Döngü ile xpath ın içini değiştirebilirmiyim acaba?Şimdiden teşekkürler.
/html/body/div[3]/div/div[3]/div/div[1]/div[1]/div[1]/div[4]/table/tbody/tr[1]/td[2]/div/span
/html/body/div[3]/div/div[3]/div/div[1]/div[1]/div[1]/div[4]/table/tbody/tr[2]/td[2]/div/span
/html/body/div[3]/div/div[3]/div/div[1]/div[1]/div[1]/div[4]/table/tbody/tr[3]/td[2]/div/span
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Net;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using System.Windows.Forms;
using HtmlAgilityPack;
namespace WindowsFormsApp8
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
// döngü durumu
bool loop_status = true;
private void button1_Click(object sender, EventArgs e)
{
CheckForIllegalCrossThreadCalls = false; // cross-thread hatasını önler
Thread abc = new Thread(launch);
abc.Start();
}
// ana işlem
private void launch()
{
while (loop_status)
{
for (int i = 0; i <= 9999; i++)
{
label2.Text = (i.ToString());//sayım yapıyor
for (int j = 0; j <= 11; j++)
{
var url = new Uri("https://canlidoviz.com/kripto-paralar"); // url oluştruduk
WebClient client = new WebClient(); // siteye erişim için client tanımladık
var html = client.DownloadString(url); //sitenin html lini indirdik
HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument(); //burada HtmlAgilityPack Kütüphanesini kullandık
doc.LoadHtml(html); // indirdiğimiz sitenin html lini oluşturduğumuz dokumana dolduruyoruz
var mlk = doc.DocumentNode.SelectNodes("/html/body/div[3]/div/div[3]/div/div[1]/div[1]/div[1]/div[4]/table/tbody/tr[1]/td[2]/div/span")[0];
label1.Text = (mlk.InnerHtml.ToString());
Thread.Sleep(1000 - DateTime.Now.Millisecond); // sistem zamanına göre 1 saniyeyi milisaniye olarak eşleştirip sleep uygular.
if (loop_status == false)
{
break; // for döngüsünü durdurur ve main loop durur.
}
}
}
}
}
private void button2_Click(object sender, EventArgs e)
{
loop_status = false;
}
}
}
Soran:18.01.24 16:21
misafir
0
// ile başlayan xpath sorgularıyla çoklu etiket seçimleri yapıp döngü kullanılabilir. Belgeye göre etiketler veya özellikleri üzerinden seçim yapabilirsin. Tam olarak yazmaya vaktim yok aman sizin kullandığınız sayfada aşağıdaki gibi bir yol izlenebilir.
HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();
doc.LoadHtml(html);
var trs = doc.DocumentNode.SelectNodes("//tr[contains(@itemprop,'itemListElement')]");
foreach ( var tr in trs )
{
var tds = tr.SelectNodes("//td");
// tds[0].SelectNodes("//span")[0].InnerHtml => Kripto para adı.
// tds[1].SelectNodes("//span")[0].InnerHtml => Fiyatı
// tsd[2], tds[3] vs. devam eder.
}
cevapsitesi.com'a katkınızdan dolayı teşekkür ederiz. Cevap yazarken lütfen şunlara dikkat edin:
Cevabınız açık ve net olmalıdır. Varsa alıntılar, bağlantılar, resim veya program kodu eklemelisiniz.
Eğer soru hakkında görüş bildirecekseniz veya cevap haricinde başka bir şey söylemek istiyorsanız yorum olarak yazın.
Tartışma çıkaracak cevaplardan kaçının, hitabınıza dikkat edin, "Kardeşim", "Arkadaşım" gibi ifadeler kullanmayın.
Eleştirmeyin. Sadece bilginizi gösterin ve fikrinizi söyleyin.
Büyük harf kullanmaktan ve cümle kurmaktan çekinmeyin. :)
Buraya yeni bir soru yazmayın, "benim de şöyle bir sorunum var" gibi eklemeler yapmayın. Sorunuz varsa yeni soru ekleyin.
ÜSLUP
ve SAYGI çok önemlidir. İnsanlar cevabınızdan çok üslubunuza dikkat ederler.
Cevabı, bir cevabın veya sorunun yorumu olarak dönüştürmek için ilgili cevabı veya soruyu tıklayın. [
İptal ]