Perbandingan harga, 3 tokoPengembangan & Kustomisasi

Parser Python yang membandingkan harga produk yang sama di 3 toko online terbuka dalam satu tabel

Biasanya selesai dalam 15 menitTermasuk revisiPemeriksaan kualitas
Paket
Perlindungan pembayaranSelengkapnya
  • Revisi dalam batas paket tidak dikenai biaya.
  • Jika Anda tidak merespons dalam 3 hari setelah penyerahan hasil, hasil kerja diterima secara otomatis.

Uang ditahan saat Anda membayar dan diteruskan hanya setelah Anda menerima hasil kerja.

Parser Python yang membandingkan harga produk yang sama di 3 toko online terbuka dalam satu tabel

Contoh hasil

Contoh untuk paket Standar

Parser katalog pemasok alat berkebun ke Excel

Seperti apa hasilnya

ArtikelNamaHargaTersediaBeratFoto
GT-1042Gunting dahan, 20 mm18,90Ya0,24 kg…/gt-1042.jpg
GT-1187Gergaji lipat, 210 mm24,50Ya0,31 kg…/gt-1187.jpg
GT-2210Gunting pagar tanaman, mata bergelombang39,00Tidak1,10 kg…/gt-2210.jpg
GT-3305Sekop tangan, baja tahan karat9,80Ya0,18 kg…/gt-3305.jpg
GT-4120Selang taman 25 m, 1/2"42,00Ya2,90 kg…/gt-4120.jpg

File dalam contoh ini berisi 1.236 produk dari 52 halaman daftar.

Sebagian kode

def product_links(list_url: str) -> Iterator[str]:
    """Tautan halaman produk dari setiap halaman daftar, mengikuti tombol 'Berikutnya'."""
    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:
    """Satu halaman terbuka, dengan kecepatan sopan: jeda antarpermintaan dan beberapa kali coba saat error."""
    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 menjawab %s, percobaan %d dari 3", url, response.status_code, attempt + 1)
    raise ScraperError(f"{url} tidak terbuka setelah 3 percobaan")

File: arsip ZIP berisi scraper.py, settings.ini (halaman awal, jeda antarpermintaan, nama file), requirements.txt, dan README tentang cara memasang dan menjalankannya. Parser hanya membaca halaman terbuka, satu halaman setiap 2 detik, dan lebih dulu memeriksa robots.txt situs. Klien menjalankannya di komputernya sendiri.

Klien: toko online perlengkapan kebun yang menjual kembali alat dari seorang pemasok; pemasok punya katalog terbuka di situsnya, tetapi tidak punya file daftar harga. Tugas: menelusuri halaman-halaman daftar katalog, membuka setiap halaman produk, dan menyimpan nomor artikel, nama, harga, stok, berat, serta tautan foto utama ke Excel, untuk membandingkan harga seminggu sekali.

Klien dan semua datanya fiktif.

Tentang layanan ini

Parser ini menyandingkan harga produk yang sama dari hingga tiga toko online terbuka: satu baris per produk, dengan harga, harga lama, stok, dan tautan dari setiap toko, serta tanggal pemeriksaan. Tiga toko tersedia di paket Premium; Dasar dan Standar membaca satu toko, sebagai awal atau uji coba. Produk dicocokkan berdasarkan kode yang ditampilkan toko, seperti barcode atau nomor part produsen, atau berdasarkan tautan yang Anda berikan untuk setiap produk: nama saja terlalu berbeda untuk dicocokkan dengan aman. Kirimkan situs-situsnya, satu halaman produk dari masing-masing yang disimpan dari browser Anda, dan daftar produk Anda. Anda menerima kode Python, file pengaturan, dan README, lalu menjalankannya di komputer Anda. Parser membaca halaman terbuka dengan kecepatan sopan, tidak pernah login atau mengakali captcha maupun perlindungan, dan tidak membaca Amazon atau Google. Anda yang memutuskan apakah ketentuan toko mengizinkannya; perubahan tata letak di kemudian hari membutuhkan pembaruan.

Yang termasuk

  • Yang Anda dapatkanArsip ZIP berisi kode Python, file pengaturan, dan README dengan petunjuk langkah demi langkah; kodenya juga ditampilkan di halaman pesanan.
  • Satu baris per produkHarga, stok, dan tautan setiap toko berdampingan
  • Dicocokkan berdasarkan kode atau tautan AndaBarcode, nomor part produsen, atau tautan yang Anda berikan
  • Tanggal pemeriksaanDi setiap baris, sehingga hasil tiap kali dijalankan bisa dibandingkan
  • Kecepatan sopanJeda antarhalaman, diatur di pengaturan
  • Berjalan di komputer AndaWindows, macOS, atau Linux, dengan Python

Cara kerja

  1. 1
    TokoAnda mengirim toko, halaman produk yang disimpan, dan daftar produk Anda
  2. 2
    ParserKami menulis kode dan panduan menjalankannya
  3. 3
    JalankanAnda menjalankannya dan memeriksa beberapa baris di setiap toko
  4. 4
    RevisiAnda meminta revisi sesuai paket dan mengirim pesan error jika ada

Yang kami butuhkan dari Anda

Tiga toko (atau satu, untuk Dasar dan Standar) dan satu halaman produk dari masing-masing, yang disimpan dari browser Anda (File > Save page as). Daftar produk Anda dengan kode yang ditampilkan toko, seperti barcode, atau tabel berisi tautan setiap produk di setiap toko. Field yang Anda butuhkan per toko, mis. harga, harga lama, stok, tautan. Kira-kira berapa banyak produknya. CSV, Excel, atau JSON.

Kami akan menanyakan:

  • Toko mana?
  • Cara mencocokkan produk
  • Field per toko
  • Kira-kira berapa banyak produk?

Bandingkan paket

PaketDasarSatu toko untuk memulaiRp 357.000StandarSatu toko, seluruh kategoriRp 714.000Premium3 toko dalam satu tabelRp 1.292.000
Tenggat1 hari2 hari3 hari
Revisi123
Situs11hingga 3
Jenis halaman12 (kategori dan produk)hingga 3
Fieldhingga 10hingga 25hingga 25 di masing-masing
Menelusuri halaman-halaman daftarTidakYaYa
File hasilCSVExcel atau CSVExcel, CSV, atau JSON
Duplikat dihapus, melanjutkan dari titik berhentiTidakTidakYa
Pesan DasarPesan StandarPesan Premium

Perlindungan pembayaran

Anda membayar saat memesan, tetapi uangnya diteruskan hanya untuk hasil kerja yang diterima.

  • Harga pastiHarga paket tidak berubah setelah Anda membayar.
  • Uang ditahanSaat Anda membayar, jumlahnya hanya ditahan. Dana diteruskan ke Dleex setelah Anda menerima hasil kerja.
  • Diperiksa sebelum penyerahanSetiap hasil melewati pemeriksaan kualitas sebelum sampai kepada Anda, dan Anda dapat melihatnya di halaman pesanan sebelum menerimanya.
  • Revisi gratisMinta revisi sesuai brief Anda sebanyak yang diizinkan paket.
  • Diterima setelah 3 hariJika dalam 3 hari setelah penyerahan hasil Anda tidak menerima hasil kerja maupun meminta revisi, hasil kerja diterima secara otomatis. Jika Anda menulis di chat pesanan setelah penyerahan hasil, pesanan akan menunggu; setelah kami menjawab, kami dapat memulai ulang hitungan 3 hari dan akan memberitahukannya di chat.
  • Dikerjakan ulang atau pengembalian dana penuhJika hasilnya tidak sesuai brief Anda dan revisi tidak memperbaikinya, atau pengerjaan memakan waktu lebih dari dua kali tenggatnya, tulis di chat pesanan: kami akan mengerjakan ulang atau mengembalikan pembayaran secara penuh.
Cara kerjanya →

Tanya jawab

Mengapa hanya Premium yang membandingkan 3 toko?

Setiap toko punya halamannya sendiri, jadi masing-masing membutuhkan bagian kodenya sendiri. Dasar dan Standar mencakup satu toko, cara yang baik untuk mencobanya lebih dulu.

Bagaimana jika toko tidak menampilkan barcode?

Kalau begitu, berikan kami tabel berisi tautan setiap produk di setiap toko. Kami tidak mencocokkan produk dengan menebak dari namanya.

Bisakah parser menyertakan Amazon, Google Shopping, atau toko di media sosial?

Tidak. Amazon, Google, LinkedIn, dan media sosial tidak termasuk: ketentuan mereka melarangnya. Untuk toko lain, Anda yang memutuskan apakah ketentuannya mengizinkan.

Bisakah parser juga membandingkan ongkos kirim?

Hanya jika halaman produk menampilkannya kepada setiap pengunjung. Parser tidak pernah menambahkan ke keranjang, mengisi alamat, atau login.

Tidak menemukan jawabannya?

Paket