Çözüldü Puppeteer ile açık olan Chromium sekmesindeki sayfada yazı bulma

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.

561400

Centipat
Katılım
7 Temmuz 2022
Mesajlar
390
Çözümler
5
Merhaba puppeteer da halihazırda çalışan projem var en son olarak ekranda açık olan Chromium penceresinde sekmede açık olan sayfada kelime aratmasını istiyorum ama belirli bir linki değil açık olan sayfayı. Birden fazla kelime aratacak herhangi birbiri varsa ture.txt içine "kelimelerden biri bulundu" yok ise false.txt içine "kelimelerden herhangi biri bulunamadı" gibi bir cümle yazdırması gerekiyor ve her seferinde alt alta bu işlemi her açılışta yapacak nasıl yapabilirim?
 
Çözüm
Evet aynen öyle ama her seferinde alt alta var.txt var var gibi yoksa yok.txt yok yok gibi alt alta yazdırsın.
Fonksiyonu güncelledim.
JavaScript:
async function searchPage(page, pattern = [], trueFilePath, falseFilePath) {
  const content = await page.content();
  let result = false;
  for (let i = 0; i < pattern.length; i++) {
    if (content.replace(/\s/g, "").includes(pattern[i])) {
      result = true;
      break;
    }
  }
  const filePath = result ? trueFilePath : falseFilePath;
  const text = result ? "Bulundu \r\n" : "Bulunamadı \r\n";
  if (!fs.existsSync(filePath)) {
    fs.writeFileSync(filePath, text);
  } else {
    fs.open(filePath, "a", 666, function (e, id) {
      fs.write(id, text, null, "utf8", function () {
        fs.close(id);
      });
    });
  }
}

Kullanmak için son parametre olarak. Bulunamadı yazmasını istediğiniz dosyanın ismini giriyorsunuz.
await searchPage(page, kelimeler, "Var.txt", "Yok.txt");
Evet aynen öyle ama her seferinde alt alta var.txt var var gibi yoksa yok.txt yok yok gibi alt alta yazdırsın.
Fonksiyonu güncelledim.
JavaScript:
async function searchPage(page, pattern = [], trueFilePath, falseFilePath) {
  const content = await page.content();
  let result = false;
  for (let i = 0; i < pattern.length; i++) {
    if (content.replace(/\s/g, "").includes(pattern[i])) {
      result = true;
      break;
    }
  }
  const filePath = result ? trueFilePath : falseFilePath;
  const text = result ? "Bulundu \r\n" : "Bulunamadı \r\n";
  if (!fs.existsSync(filePath)) {
    fs.writeFileSync(filePath, text);
  } else {
    fs.open(filePath, "a", 666, function (e, id) {
      fs.write(id, text, null, "utf8", function () {
        fs.close(id);
      });
    });
  }
}

Kullanmak için son parametre olarak. Bulunamadı yazmasını istediğiniz dosyanın ismini giriyorsunuz.
await searchPage(page, kelimeler, "Var.txt", "Yok.txt");
 
Çözüm
Her şey tamamdır çok teşekkürler tam ihtiyacım olan şey buydu sağ olun bir de bir sorum olacak bu kod sayfanın kaynak kodunda herhangi bir bir yerdemi aratıyor.
 
Tamamdır çok teşekkürler.

Hocam bu kaynak kodunda direk aratıyor dedinizde mesela başlıkta aratmak ama olmuyor.

CTRL + u yapınca çıkan kodta arama yapmıyor mu?
 
Son düzenleme:

Technopat Haberler

Yeni konular

Geri
Yukarı