Araç ilanları parser'ıGeliştirme ve Özelleştirme

Açık araç ilanları için Python parser'ı: marka, yıl, kilometre, fiyat ve şehir bir tabloda, satıcı iletişim bilgisi olmadan

Genellikle 15 dakika içinde hazırRevizyonlar dahilKalite kontrolü
Paketler
Ödeme korumasıAyrıntılar
  • Paket kapsamındaki revizyonlar ücretsizdir.
  • Teslimattan sonraki 3 gün içinde yanıt vermezseniz iş otomatik olarak onaylanır.

Para, ödeme yaptığınızda bloke edilir ve yalnızca işi onayladığınızda aktarılır.

Açık araç ilanları için Python parser'ı: marka, yıl, kilometre, fiyat ve şehir bir tabloda, satıcı iletişim bilgisi olmadan

Örnek sonuç

Standart paket için örnek

Parser of a garden tools supplier's catalog into Excel

What the result looks like

ArticleNamePriceIn stockWeightPhoto
GT-1042Pruning shears, 20 mm18.90Yes0.24 kg…/gt-1042.jpg
GT-1187Folding saw, 210 mm24.50Yes0.31 kg…/gt-1187.jpg
GT-2210Hedge shears, wavy blade39.00No1.10 kg…/gt-2210.jpg
GT-3305Hand trowel, stainless9.80Yes0.18 kg…/gt-3305.jpg
GT-4120Garden hose 25 m, 1/2"42.00Yes2.90 kg…/gt-4120.jpg

The file in the example has 1,236 products from 52 list pages.

A part of the code

def product_links(list_url: str) -> Iterator[str]:
    """Product page links from every page of the list, following 'Next'."""
    url: str | None = list_url
    while url:
        page = fetch(url)
        for card in page.select("div.product-card a.title"):
            yield urljoin(url, card["href"])
        next_link = page.select_one("a.pagination-next")
        url = urljoin(url, next_link["href"]) if next_link else None


def fetch(url: str) -> BeautifulSoup:
    """One open page, at a polite pace: a pause between requests and a few tries on errors."""
    for attempt in range(3):
        time.sleep(settings.delay_seconds)
        response = session.get(url, timeout=30)
        if response.status_code == 200:
            return BeautifulSoup(response.text, "html.parser")
        log.warning("%s answered %s, try %d of 3", url, response.status_code, attempt + 1)
    raise ScraperError(f"{url} did not open after 3 tries")

Files: a ZIP archive with scraper.py, settings.ini (the start page, the pause between requests, the file name), requirements.txt and a README on installing and running it. It reads only open pages, one every 2 seconds, and checks the site's robots.txt first. The client runs it on their own computer.

Client: an online garden shop that resells a supplier's tools; the supplier has an open catalog on its website but no price list file. Task: go through the catalog's list pages, open every product page and save the article number, name, price, stock, weight and main photo link to Excel, to compare prices once a week.

Müşteri ve tüm ayrıntılar kurgusaldır.

Bu hizmet hakkında

Galericiler ve araç alıcıları bu parser ile piyasayı tek bir tabloda görür: açık araç ilanlarından marka, yıl, kilometre, motor, vites, kasa tipi, yakıt, renk, fiyat, şehir, ilan tarihi, bağlantı ve fotoğraf bağlantıları. Sitede aramayı kurun (marka, yıllar, fiyat aralığı) ve o bağlantıyı, bir ilanı ve tarayıcınızdan kaydedilmiş bir ya da iki sayfayı gönderin. Kodu Python'da bu sayfalara göre yazarız; onu bir ayar dosyası ve README ile alır, ihtiyacınız olduğu sıklıkta kendiniz çalıştırırsınız. Satıcı verileri dışarıda kalır: ad, e-posta ya da telefon numarası yok, plaka ya da şasi numarası (VIN) da yok. Parser açık sayfaları siteyi yormayan bir hızda okur; asla oturum açmaz, CAPTCHA'ları ya da korumaları aşmaz. Sitenin koşullarının buna izin verip vermediği sizin kararınızdır; sitenin düzeni sonradan değişirse güncelleme gerekir.

Neler dahil

  • Neler alırsınızPython kodunu, bir ayar dosyasını ve adım adım talimatlar içeren bir README dosyasını barındıran bir ZIP arşivi; kod sipariş sayfasında da gösterilir.
  • Piyasa tek bir tablodaExcel'de yıla, kilometreye ya da fiyata göre sıralayın
  • Arama bağlantınızMarka, yıllar ve fiyat aralığı sitede ayarlanır
  • Satıcı verisi yokAd, telefon, plaka ya da VIN yok
  • Sayı olarak kilometreFiltrelere ve ortalamalara hazır
  • Bilgisayarınızda çalışırPython yüklü Windows, macOS ya da Linux

Nasıl çalışır

  1. 1
    AramaBir arama bağlantısı ve kaydedilmiş bir ilan gönderirsiniz
  2. 2
    ParserKodu ve çalıştırma kılavuzunu yazarız
  3. 3
    ÇalıştırmaÇalıştırır ve birkaç aracı siteyle karşılaştırırsınız
  4. 4
    DeğişikliklerPaketiniz kapsamında değişiklik ister, varsa hata mesajını gönderirsiniz

Sizden neler gerekiyor

Araç sitesi ve filtrelerinizi içeren bir arama bağlantısı, bir ilan sayfası ve aramanın yaklaşık kaç araç gösterdiği. Tablonuzdaki sırayla ihtiyacınız olan alanlar, ör. marka, yıl, kilometre, motor, vites, fiyat, şehir, bağlantı. Tarayıcınızdan kaydedilmiş (Dosya > Sayfayı farklı kaydet) bu sayfalardan bir ya da ikisi veya ekran görüntüleri. CSV mi Excel mi olacağı ve ne sıklıkla çalıştıracağınız.

Size soracaklarımız:

  • Hangi site ve arama?
  • İhtiyacınız olan alanlar
  • Yaklaşık kaç araç?
  • Yapması gereken başka bir şey

Paketleri karşılaştırın

PaketlerTemelBağlantılarınızdaki ilanlar$21StandartAramanız, her araç$42PremiumEn fazla 3 araç sitesi$75
Teslim süresi1 gün2 gün3 gün
Revizyonlar123
Siteler11en fazla 3
Sayfa türleri12 (arama sonuçları ve ilan)en fazla 3
Alanlaren fazla 10en fazla 25her birinde en fazla 25
Bir listenin sayfalarında gezinirHayırEvetEvet
Sonuç dosyasıCSVExcel ya da CSVExcel, CSV ya da JSON
Tekrarlar temizlenir, kaldığı yerden devam ederHayırHayırEvet
Sipariş ver TemelSipariş ver StandartSipariş ver Premium

Ödeme koruması

Sipariş verirken ödersiniz, ancak para yalnızca onaylanan iş için aktarılır.

  • Sabit fiyatPaket fiyatı, ödeme yaptıktan sonra değişmez.
  • Para bloke edilirÖdeme yaptığınızda tutar yalnızca bloke edilir. İşi onayladığınızda hizmete aktarılır.
  • Teslimattan önce kontrolHer sonuç size ulaşmadan önce kalite kontrolünden geçer ve onaylamadan önce sipariş sayfasında görürsünüz.
  • Ücretsiz revizyonlarBrifiniz kapsamında, paketin izin verdiği sayıda değişiklik isteyin.
  • 3 gün sonra onayTeslimattan sonraki 3 gün içinde işi onaylamaz veya değişiklik istemezseniz iş otomatik olarak onaylanır. Teslimattan sonra sipariş sohbetine yazarsanız sipariş bekletilir; yanıt verdikten sonra 3 günlük süreyi yeniden başlatabiliriz ve bunu sohbette bildiririz.
  • Yeniden yapım veya tam iadeSonuç brifinize uymuyorsa ve revizyonlar sorunu çözmediyse ya da iş teslim süresinin iki katından uzun sürerse sipariş sohbetine yazın: işi yeniden yaparız veya ödemenin tamamını iade ederiz.
Nasıl çalışır →

Sorular ve yanıtlar

Bir aracın ne kadar ettiğini söyler mi?

Hayır. İstenen fiyatları ilanlarda göründüğü gibi toplar. Araçlara değer biçmeyiz ya da satın alma tavsiyesi vermeyiz; tablo sizin kendi karşılaştırmanız içindir.

Satıcıların telefon numaralarını alabilir miyim?

Hayır. Parser kişilerin adlarını, e-postalarını ya da telefon numaralarını toplamaz. Her satırda ilan bağlantısı bulunur; satıcıya oradan, sitenin sunduğu şekilde ulaşabilirsiniz.

Sosyal ağlardaki ya da Google'daki araç ilanlarını okuyabilir mi?

Hayır. Sosyal ağları, LinkedIn'i, Google'ı ya da Amazon'u okumaz: koşulları bunu yasaklar ve birçok sayfa oturum açmayı gerektirir. Diğer açık araç siteleri, koşulları izin veriyorsa uygundur; buna siz karar verirsiniz.

Site ilanları bir CAPTCHA'nın arkasına saklarsa ne olur?

O zaman parser onları okuyamaz: CAPTCHA'ları ya da diğer korumaları asla aşmaz. Site düzenini sonradan değiştirirse parser'ın güncellenmesi gerekir ve bu yeni bir sipariştir.

Yanıtınızı bulamadınız mı?

Paketler