Я следовал этому руководству о том, как создать веб-приложение для очистки с помощью Python. В частности, я пытаюсь почерпнуть результаты поиска на частом сайте покупок. Проблема в том, что, когда я подключаю этот сайт, он возвращает ошибку!
Вся функция на данный момент выглядит следующим образом:
from requests import get
from requests.exceptions import RequestException
from contextlib import closing
from bs4 import BeautifulSoup
def simple_get(url):
try:
with closing(get(url, stream=True)) as resp:
if is_good_response(resp):
return resp.content
else:
return None
except RequestException as e:
log_error('Error during requests to {0} : {1}'.format(url, str(e)))
return None
def is_good_response(resp):
content_type = resp.headers['Content-Type'].lower()
return (resp.status_code == 200
and content_type is not None
and content_type.find('html') > -1)
def log_error(e):
print(e)
И чтобы проверить это, у меня просто есть строки
raw_html = simple_get('https://stackoverflow.com/')
print len(raw_html)
И он успешно печатает длину каждого сайта, который я вставил, кроме того, для которого я создаю приложение! Когда я вставляю этот URL, я получаю сообщение об ошибке
TypeError: object of type 'NoneType' has no len()
URL, который вызывает у меня головную боль:
https://www.mercari.com/search/?facets=2&itemStatuses=1&keyword=loungefly&length=30&sortBy=2