Форум сайта python.su
0
Я парсю этот портал.Заголовок,дату и контент новости.И при парсинге использую python 3.7 библиотеку BS4
И вот при парсинге этого портала у меня выходит такая ошибка:
Traceback (most recent call last): File "C:/Users/Администратор/PycharmProjects/Task/parser.py", line 124, in <module> call_all_func(resources) File "C:/Users/Администратор/PycharmProjects/Task/parser.py", line 104, in call_all_func item_page = get_html(resource_link) File "C:/Users/Администратор/PycharmProjects/Task/parser.py", line 14, in get_html r = requests.get(url) File "C:\Users\Администратор\AppData\Local\Programs\Python\Python37-32\lib\site-packages\requests\api.py", line 75, in get return request('get', url, params=params, **kwargs) File "C:\Users\Администратор\AppData\Local\Programs\Python\Python37-32\lib\site-packages\requests\api.py", line 60, in request return session.request(method=method, url=url, **kwargs) File "C:\Users\Администратор\AppData\Local\Programs\Python\Python37-32\lib\site-packages\requests\sessions.py", line 533, in request resp = self.send(prep, **send_kwargs) File "C:\Users\Администратор\AppData\Local\Programs\Python\Python37-32\lib\site-packages\requests\sessions.py", line 668, in send history = [resp for resp in gen] if allow_redirects else [] File "C:\Users\Администратор\AppData\Local\Programs\Python\Python37-32\lib\site-packages\requests\sessions.py", line 668, in <listcomp> history = [resp for resp in gen] if allow_redirects else [] File "C:\Users\Администратор\AppData\Local\Programs\Python\Python37-32\lib\site-packages\requests\sessions.py", line 165, in resolve_redirects raise TooManyRedirects('Exceeded %s redirects.' % self.max_redirects, response=resp) requests.exceptions.TooManyRedirects: Exceeded 30 redirects. Process finished with exit code 1
def get_html(url): r = requests.get(url) return r.text
def get_html(url): r = requests.get(url,allow_redirects=True) return r.text
Офлайн
221
Возможно имеет место быть циклическим редиректам. То есть странница ссылается на саму себя, и requests при попытке дойти до итоговой страницы превышает лимит запросов. Если так, то решение проблемы - игнорировать ошибку. Перехватывать ее.
Офлайн
0
JOHN_16Перехватывать ? В смысле использовать исключение try except ?
Возможно имеет место быть циклическим редиректам. То есть странница ссылается на саму себя, и requests при попытке дойти до итоговой страницы превышает лимит запросов. Если так, то решение проблемы - игнорировать ошибку. Перехватывать ее.
Офлайн
221
да
Офлайн
0
JOHN_16Попробую,как проверю.Сразу вам отпишу
да
Офлайн
0
JOHN_16
да
# < Получаем html код. def get_html(url): try: r = requests.get(url) return r.text except requests.exceptions.TooManyRedirects: print('')
Офлайн