Saya mencoba mengikis situs yang memiliki tautan ke Amazon dengan Python menggunakan kerangka kerja ini - selenium, sup yang indah.
Tujuan saya adalah mengikis detail produk Amazon Berikut --> Judul, Harga, Deskripsi, Ulasan Pertama
Tetapi saya mengalami kesulitan dengan penyeleksi Cantik. Saya mencoba banyak kombinasi tetapi saya mendapatkan keluaran nol atau Kesalahan, Sayangnya Tidak begitu Pro. Masalah utamanya adalah Sup Cantik tidak memiliki penyeleksi XPath (AFAIK). Haruskah saya beralih ke scrapy untuk tugas ini, atau apakah scrapy terlalu berlebihan untuk scraper sederhana ini?
Ini untuk produk pertama yang akan saya ulangi nanti
from bs4 import BeautifulSoup
from selenium import webdriver
import time
driver.get('https://www.example.com')
driver.get('https://www.example.com')
first_article = driver.find_element_by_css_selector('div.button')
first_article.click()
html = driver.page_source
soup = BeautifulSoup(html, 'lxml')
# perform the operation
Setelah itu saya harus memilih jalur masing-masing tetapi bagaimana cara melakukannya? Di Xpath kira-kira seperti ini,
Title = '//h1[@id="title"]//text()'
Price = '//span[contains(@id,"ourprice") or contains(@id,"saleprice")]/text()'
Category = //a[@class="a-link-normal a-color-tertiary"]//text()'
Tapi detail produk dan jalur review pertama saja saya belum bisa. Saya rasa, penyeleksi find_all Sup Cantik tidak akan membantu di sini.
html = driver.page_source soup.xpath('//*[@id="title"]') soup.xpath('//*[@id="title"]')
tetapi mendapatkan kesalahan ini --› Objek 'NoneType' tidak dapat dipanggil, mengapa objek tersebut tidak dapat dipanggil? - person Abhijeet Pal   schedule 08.06.2018