#python #beautifulsoup #python-requests #web-crawler
#python #beautifulsoup #python-запросы #веб-сканер
Вопрос:
Я пытаюсь создать веб-сканер, используя python (3.8), я в основном думаю, что я закончил, но я получаю эту ошибку, может ли кто-нибудь помочь мне и заранее поблагодарить.
Код Python :
import requests
from bs4 import BeautifulSoup
def aliexpress_spider (max_pages):
page = 1
while page <= max_pages:
url = "https://www.aliexpress.com/af/ps4.html?trafficChannel=afamp;d=yamp;CatId=0amp;SearchText=ps4amp;ltype=affiliateamp;SortType=defaultamp;page=" str(page)
sourcecode = requests.get(url)
plaintext = sourcecode.text
soup = BeautifulSoup(plaintext)
for link in soup.findAll('a' , {'class' : 'item-title'}):
href = "https://www.aliexpress.com" link.get("href")
title = link.string
print(href)
print(title)
page = 1
aliexpress_spider(1)
Массовая ошибка :
GuessedAtParserWarning: No parser was explicitly specified, so I'm using the best available HTML parser for this system ("html.parser"). This usually isn't a problem, but if you run this code on another system, or in a different virtual environment, it may use a different parser and behave differently.
The code that caused this warning is on line 11 of the file C:/Users/moham/PycharmProjects/moh/test.py. To get rid of this warning, pass the additional argument 'features="html.parser"' to the BeautifulSoup constructor.
soup = BeautifulSoup(plaintext)
Комментарии:
1. Это не обязательно проблема. Вы просто не указали praser для использования в строке 11. Вы могли бы вместо этого написать
soup = BeautifulSoup(plaintext, 'html.parser)
, и предупреждение исчезнет
Ответ №1:
import requests
from bs4 import BeautifulSoup
def aliexpress_spider (max_pages):
page = 1
while page <= max_pages:
url = "https://www.aliexpress.com/af/ps4.html?trafficChannel=afamp;d=yamp;CatId=0amp;SearchText=ps4amp;ltype=affiliateamp;SortType=defaultamp;page=" str(page)
sourcecode = requests.get(url)
soup = BeautifulSoup(sourcecode.text ,"html.parser")
for link in soup.findAll('a' , {'class' : 'item-title'}):
href = "https://www.aliexpress.com" link.get("href")
title = link.string
print(href)
print(title)
print(soup.title)
page = 1
aliexpress_spider(1)