Получить токены доступа groupon - PullRequest
0 голосов
/ 06 января 2019

Я хотел бы получить исходный код веб-страницы, но у меня есть сообщение «Отказано в доступе». Я пытался использовать пользовательский агент, чтобы решить эту проблему, он работал несколько, но после того, как та же ошибка вернулась. Я видел, что одним из решений было восстановить токены страницы, где мой вопрос. Как восстановить токены со страницы или сайта.

URL сайта: https://www.groupon.com/browse/boston?category=food-and-drink

#import needed object
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from bs4 import BeautifulSoup
from fake_useragent import UserAgent

#put the url of the groupon page in the object url
url = "https://www.groupon.com/browse/boston?category=food-and-drink"
#print the url on the screen, return an object of type NoneType
print(url)

#create a UserAgent object
ua = UserAgent()
#put a random UserAgent in the object userAgent
userAgent = ua.random
#print the userAgent on the screen, return an object of type NoneType
print(userAgent)
#initialise the object options with the options of chrome webdriver 
selenium.webdriver.chrome.options.Options
options = Options()
#add a argument in the object option, return an object of type NoneType
options.add_argument(f'user-agent={userAgent}')
#define the option of chrome webdriver
 options.headless = True
#create a webdriver object, return the object driver of type 
selenium.webdriver.chrome.webdriver.WebDriver
driver = webdriver.Chrome(options=options, executable_path=r'C:\Users\user\AppData\Local\Programs\Python\Python36\Scripts\chromedriver.exe')
#get the url, return an object of type NoneType
driver.get(url)
#create a beautifulsoup object, return an object of type bs4.BeautifulSoup
soup = BeautifulSoup(driver.page_source,features="html.parser")

#select body, return the object codeSource of type list
codeSource = soup.select('body')
#print codeSource on the screen, return an object of type NoneType 
print(codeSource)

результат

1 Ответ

0 голосов
/ 07 января 2019

Вы получаете эту проблему в режиме без головы, в нормальном режиме это будет работать нормально. Таким образом, вы можете удалить option.headless = true и вы получите исходный код страницы без проблем

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...