Webscrapping CrunchBase Доступ запрещен при использовании заголовка агента пользователя - PullRequest
2 голосов
/ 18 апреля 2019

Я пытаюсь создать Crunch Base, чтобы найти общую сумму финансирования для определенных компаний. Вот ссылка на пример.

Сначала я попробовал просто использовать красивый суп, но постоянно получаю сообщение об ошибке:

Доступ к этой странице запрещен, поскольку мы считаем, что вы используете инструменты автоматизации для просмотра \ nсайта.

Итак, я посмотрел, как имитировать посещение браузера, и изменил свой код, но все равно получаю ту же ошибку. Что я делаю неправильно??

import requests
from bs4 import BeautifulSoup as BS


url = 'https://www.crunchbase.com/organization/incube-labs'
headers = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) 
AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36'}

response = requests.get(url, headers=headers)
print(response.content)

1 Ответ

2 голосов
/ 19 апреля 2019

В целом ваш код выглядит великолепно! Похоже, что веб-сайт, который вы пытаетесь удалить, требует более сложного заголовка, чем тот, который у вас есть. Следующий код должен решить вашу проблему:

import requests
from bs4 import BeautifulSoup as BS


url = 'https://www.crunchbase.com/organization/incube-labs'
headers = {"User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:66.0) Gecko/20100101 Firefox/66.0", "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", "Accept-Language": "en-US,en;q=0.5", "Accept-Encoding": "gzip, deflate", "DNT": "1", "Connection": "close", "Upgrade-Insecure-Requests": "1"}

response = requests.get(url, headers=headers)
print(response.content)

Надеюсь, это поможет!

...