YazılımÖ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.

Örnek sonuç
Parser of a garden tools supplier's catalog into Excel
What the result looks like
| Article | Name | Price | In stock | Weight | Photo |
|---|---|---|---|---|---|
| GT-1042 | Pruning shears, 20 mm | 18.90 | Yes | 0.24 kg | …/gt-1042.jpg |
| GT-1187 | Folding saw, 210 mm | 24.50 | Yes | 0.31 kg | …/gt-1187.jpg |
| GT-2210 | Hedge shears, wavy blade | 39.00 | No | 1.10 kg | …/gt-2210.jpg |
| GT-3305 | Hand trowel, stainless | 9.80 | Yes | 0.18 kg | …/gt-3305.jpg |
| GT-4120 | Garden hose 25 m, 1/2" | 42.00 | Yes | 2.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
Kendi tariflerini taşıyan yemek blogcuları, yemek uygulamaları ve menü planlama hizmetleri bu parser ile açık sayfalardan bir tarif tablosu oluşturur: ad, kategori, mutfak, pişirme süresi, porsiyon, malzemeler, adımlar, sayfa gösteriyorsa kalori, görsel bağlantısı ve bağlantı. Birçok tarif sayfası bu bilgileri gizli bir yapılandırılmış veri bloğunda da tutar; parser bu blok varsa onu okur. Siteyi, bir kategori ve bir tarif sayfasını ve tarayıcınızdan kaydedilmiş bir ya da iki sayfayı gönderin. Python kodu, bir ayar dosyası ve README alırsınız ve onu bilgisayarınızda çalıştırırsınız. Tarif metinleri ve fotoğrafları yazarlarına aittir: yalnızca izniniz olanı kullanın. Yazar adları dışarıda bırakılır. 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ğine siz karar verirsiniz; sonradan bir düzen değişikliği olursa 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.
- Liste olarak malzemelerBir hücrede her satıra bir malzeme ya da ayrı bir sayfa
- Süre ve porsiyonFiltreleyebileceğiniz sayılar olarak
- Görsel bağlantılarıYalnızca bağlantılar; izniniz olan fotoğrafları kullanın
- Nazik hızSayfalar arasında, ayarlardan belirlenen bir bekleme süresi
- Bilgisayarınızda çalışırPython yüklü Windows, macOS ya da Linux
Nasıl çalışır
- 1SayfalarSiteyi, bir kategoriyi ve kaydedilmiş bir tarifi verirsiniz
- 2ParserKodu ve çalıştırma kılavuzunu yazarız
- 3ÇalıştırmaÇalıştırır ve iki tarifi siteyle karşılaştırırsınız
- 4DeğişikliklerPaketiniz kapsamında değişiklik ister, varsa hata mesajını gönderirsiniz
Sizden neler gerekiyor
Tarif sitesi ve tam sayfalar: bir kategori ve bir tarif bağlantısı ve yaklaşık kaç tarif olduğu. İhtiyacınız olan alanlar, ör. ad, kategori, mutfak, süre, porsiyon, malzemeler, adımlar, kalori, görsel bağlantısı. Malzemelerin nasıl görüneceği: tek bir hücre ya da ayrı bir sayfa. Tarayıcınızdan kaydedilmiş (Dosya > Sayfayı farklı kaydet) bu sayfalardan bir ya da ikisi. Ve bunların sizin kendi tarifleriniz mi yoksa başka bir sitenin tarifleri mi olduğu.
Size soracaklarımız:
- Hangi site ve sayfalar?
- İhtiyacınız olan alanlar
- Yaklaşık kaç tarif?
- Malzemeler nasıl görünmeli?
Paketleri karşılaştırın
| Paketler | TemelBağlantılarınızdaki tarifler$21 | StandartBütün bir tarif bölümü$42 | PremiumEn fazla 3 tarif sitesi$75 |
|---|---|---|---|
| Teslim süresi | 1 gün | 2 gün | 3 gün |
| Revizyonlar | 1 | 2 | 3 |
| Siteler | 1 | 1 | en fazla 3 |
| Sayfa türleri | 1 | 2 (tarif listesi ve tarif) | en fazla 3 |
| Alanlar | en fazla 10 | en fazla 25 | her birinde en fazla 25 |
| Bir listenin sayfalarında gezinir | Hayır | Evet | Evet |
| Sonuç dosyası | CSV | Excel ya da CSV | Excel, CSV ya da JSON |
| Tekrarlar temizlenir, kaldığı yerden devam eder | Hayır | Hayır | Evet |
| Sipariş ver Temel | Sipariş ver Standart | Sipariş 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.
Sorular ve yanıtlar
Toplanan tarifleri kendi sitemde yayımlayabilir miyim?
Yalnızca sahibinin izniyle ya da sizin kendi tariflerinizse. Tarif metinleri ve fotoğrafları yazarlarına aittir; parser bunları toplar, neyi yayımlayacağınız sizin kararınızdır.
Miktarları ve birimleri ayırabilir mi?
Evet, sayfa bunları yapılandırılmış blokta genellikle olduğu gibi düzenli bir şekilde yazıyorsa. Bir satırda “bir tutam tuz” yazıyorsa yazıldığı gibi kalır.
Kalori hesaplayabilir mi?
Hayır. Kaloriyi yalnızca sayfa gösteriyorsa alır; besin değeri hesaplamayız ya da diyet tavsiyesi vermeyiz.
Sosyal ağlardan ya da video sitelerinden tarif okuyabilir mi?
Hayır. Sosyal ağlar, LinkedIn, Google ve Amazon kapsam dışıdır: koşulları bunu yasaklar. Tarif siteleri, koşulları izin veriyorsa uygundur; buna siz karar verirsiniz.
Yanıtınızı bulamadınız mı?


