Адаптация Craigslist Scraper Python
Я пытаюсь адаптировать скребок для Craigslist на Python 2.7, который я нашел в Интернете, для работы с Python 3.6.
Но каждый раз, когда я запускаю скрипт на python, он ничего не возвращает. Это потому, что я не нацеливаюсь на правильные теги HTML? и если да, то как я нацелился бы на правильные HTML-теги?
Я предполагаю, что именно эта часть кода здесь:
for listing in soup.find_all('p',{'class':'result-row'}):
if listing.find('span',{'class':'result-price'}) != None:
Полный скрипт ниже.
Заранее спасибо.
import requests
from bs4 import BeautifulSoup
from urllib.parse import urljoin
URL = 'https://vancouver.craigslist.ca/search/sss?query=Vespa'
BASE = 'https://vancouver.craigslist.ca/'
response = requests.get(URL)
soup = BeautifulSoup(response.content,"html.parser")
for listing in soup.find_all('p',{'class':'result-row'}):
if listing.find('span',{'class':'result-price'}) != None:
price = listing.text[2:6]
price = int(price)
if price <=3600 and price > 1000:
print (listing.text)
link_end = listing.a['href']
url = urljoin(BASE, link_end)
print (url)
print ("\n")
print('test')
1 ответ
Вы правы в том, что это вероятная проблема:
for listing in soup.find_all('p',{'class':'result-row'}):
if listing.find('span',{'class':'result-price'}) != None:
Этот фрагмент должен быть отредактирован для конкретной веб-страницы, которую вы просматриваете. Вы посмотрели HTML-код страницы и проверили эти две строки? Если нет, щелкните правой кнопкой мыши страницу и выберите "просмотреть исходный код страницы". Затем вы должны найти конкретные данные, которые вы хотите очистить.
Если я хочу получить что-то с веб-страницы, которая выглядит следующим образом в HTML:
<div class='what'>hello</div>
Я бы изменил этот код выше на это:
for listing in soup.find_all('div',{'class':'what'}):
# do something