Ne oldu? Microsoft,Playwright'ın yeni sürümünü saat gibi çıkardı! Hata düzeltmelerine ve API değişikliklerine ayak uydurmak tam zamanlı bir iş gibi gelebilir ve harika özellikleri kaçırmak çok kolaydır. Ama endişelenmeyin; Biz senin arkandayız!
En son Oyun Yazarı güncellemelerini içeren bir yolculuğa bize katılın. Gelişmelerden haberdar olmanıza, yeni numaralar öğrenmenize ve iş arkadaşlarınızı muhteşem becerilerinizle şaşırtmanıza yardımcı olmak için buradayız! Dalmaya hazır mısınız? Hadi gidelim!
Bazı harika örnekler aracılığıyla en son Oyun Yazarı güncellemelerine ilk elden göz atmak istiyorsanız Oyun Yazarı YouTube Kanalına gidin ve aylık "Oyun Yazarındaki Yenilikler" videosunu izleyin:
Oyun Yazarı'nda sunulan en yeni özellikleri keşfetmenin ve bunlardan en iyi şekilde nasıl yararlanabileceğinizi görmenin zamanı geldi 🔍
FirefoxUserPrefs
alanı browserType.launchPersistentContext(userDataDir, options)
öğesinin options
nesne bağımsız değişkenine eklendi. Bu yöntem, userDataDir
bulunan kalıcı depolamayı kullanarak bir tarayıcı başlatır ve tarayıcı bağlam örneğini döndürür. firefoxUserPrefs
` about:config
adresinde belirtildiği gibi Firefox kullanıcı tercihlerini içeren bir nesnedir.reason
alanı page.close(options)
, browserContext.close(options)
ve browser.close(options)
yöntemlerinin options
nesne bağımsız değişkenine eklendi. reason
, close()
çağrısı sonucunda kesintiye uğrayan tüm işlemler tarafından bildirilen hata mesajını içeren bir dizedir.
firefoxUserPrefs
özel olarak özel yapılandırmalara ihtiyaç duyan Firefox kullanıcılarına hitap ederken, reason
alanı çok daha genel bir amaçtır. Aşağıdaki kod parçasında olduğu gibi kullanın:
await browser.close({ reason: "Scraping process completed!" })
Artık browser.close()
tarafından kesintiye uğrayan tüm bekleyen işlemler, "Kazıma işlemi tamamlandı!" mesajını içeren bir JavaScript hatası oluşturacaktır.
Bu özellik nasıl kullanılır? Hedef sayfanızın kritik bir görevin ortasında olduğunu, örneğin bazı verilerin alınmasını beklediğini hayal edin. Aniden beklenmedik bir hata ortaya çıkıyor ve tarayıcıyı zarif bir şekilde kapatma ihtiyacıyla karşı karşıya kalıyorsunuz.
reason
olarak, devam eden görev için kaynakların serbest bırakılıp bırakılmadığı ve operasyonun neden kesintiye uğradığı konusunda bilgisiz kalırsınız. Neler olup bittiğini bilmemek kötüdür, özellikle de otomatik bir web kazıma komut dosyasının günlüklerindeki bir hatanın nedenini incelemekle görevlendirildiğinizde. İşte tam bu noktada 'mantık' alanı imdadınıza yetişiyor ve sizi günlerce süren özenli araştırmalardan kurtarıyor.
Harika, bu API tanıtımı hata ayıklamayı çok daha kolay hale getiriyor! 🚀
Siz bir tarayıcıda eylemler gerçekleştirirken otomatik olarak testler oluşturmak üzere tasarlanan Playwright Test Oluşturucu aracı artık aşağıdaki düğmeleri sunmaktadır:
expect(locator).toBeVisible()
talimatı oluşturarak seçilen öğenin görünür olduğunu doğrulayın.expect(locator).toContainText()
talimatı aracılığıyla belirli bir metin içerdiğinden emin olun.expect(locator).toHaveValue()
talimatı ekleyerek select öğesinin belirli bir değere sahip olup olmadığını kontrol edin.
Şunu hayal edin : dinamik bir web sayfası için web kazıyıcı oluşturmak gibi karmaşık bir görev üzerinde çalışıyorsunuz. Sayfadaki bazı öğelerin görünür olduğundan ve belirli metin veya değerleri içerdiğinden emin olmanız gerektiğini varsayalım. Bu biraz karmaşık bir mantık gerektirir 👎. Ancak bekleyin; bu yeni güncelleme sayesinde her şey Test Oluşturucu aracındaki birkaç tıklamaya indirgeniyor!
Aşağıdaki GIF'te bu yeni özelliği çalışırken görün:
Bu Test Oluşturucu etkileşimi sizin için aşağıdaki TypeScript testini üretecektir:
import { test, expect } from '@playwright/test'; test('test', async ({ page }) => { await page.goto('https://playwright.dev/'); await expect(page.getByRole('banner')).toContainText('Get started'); });
✨ Oldukça büyülü değil mi? ✨
Oyun Yazarının büyük güncellemelerinin büyük geleneğine uygun olarak, desteklenen tarayıcıların listesi daha yeni sürümlerle güncellendi:
Ama hepsi bu değil! Playwright'ın mevcut sürümünün aşağıdaki kararlı kanallara karşı da mükemmel olduğu kanıtlanmıştır:
Google Chrome 119
Microsoft Kenar 119
download.path()
ve download.createReadStream()
yöntemleri artık indirme işlemi başarısız olduğunda veya iptal edildiğinde hata veriyor.
Playwright liman işçisi görüntüsü artık Node.js v20 ile birlikte geliyor.
Yeni güncellemeleri kaçırmak istemiyor musunuz? Oyun Yazarı Sürüm Notları sayfasına göz atın!
Şimdi şunu düşünüyor olmalısınız: "Bu harika yeni eklemeleri nasıl ele geçirebilirim?" Peki, Oyun Yazarını en son sürüme güncelleyerek dostum!
Aşağıdaki komutu çalıştırmanız yeterli:
npm install @playwright/test@latest
Tarayıcı örneklerini aşağıdakilerle yükseltmeyi de unutmayın:
npx playwright install
İşte! En son Oyun Yazarı güncellemelerini almaya hazırsınız!
Playwright sürümünüz ne kadar güncel olursa olsun çoğu site otomatik komut dosyalarınızı algılayıp engelleyebilecektir. Peki bu nasıl mümkün olabilir? Playwright gibi kütüphaneler tarafından kontrol edilen başsız tarayıcılar, anti-bot çözümleri tarafından tehlike işareti olarak görülen özel konfigürasyonlar ve ayarlar içerir. Sonuç? Ani blokajlar veya CAPTCHA'nın istenmeyen görünümü ve diğer sinir bozucu engeller .
Şimdi şunu düşünüyor olabilirsiniz: "Bunu önlemek için tarayıcı ayarlarımı değiştiremez miyim?"
O kadar hızlı değil evlat! Bu, en az üç zorlayıcı nedenden dolayı harika bir fikir değil:
Sorun, tarayıcı otomasyon kütüphanesinin kendisinde değil (Oyun Yazarı harika! 🤘), daha çok tarayıcının kontrol altında olmasında. Çözüm, son derece özelleştirilebilir bir tarayıcı olacaktır:
İster inanın ister inanmayın, bu çok uzak bir serap değil. Bu gerçektir ve Bright Data'nın Scraping Tarayıcı çözümünün amacı da tam olarak budur!
Oyun yazarı, tarayıcı otomasyon kitaplıklarının rock yıldızıdır ve tıpkı Noel Baba'nın Noel Arifesinde hediyeler dağıtması gibi, Microsoft da her ay büyük bir yeni güncelleme yayınlar. Burada, en son Oyun Yazarı güncellemelerinden en iyi şekilde nasıl yararlanabileceğinizi gördünüz, ancak kabul edelim ki bunlar, gelişmiş bot tespit teknolojilerine sahip siteler için sizi sihirli bir şekilde görünmez hale getirmeyecek.
Bright Data'nın Scraping Tarayıcı çözümüyle bu kurşundan kurtulun ve otomatik komut dosyaları aracılığıyla bile İnternet'i herkes için, her yerde, herkese açık bir yer haline getirme misyonumuza katılın!
Bir dahaki sefere kadar Web'i özgürce keşfetmeye devam edin!