Если вы жестко закодировали строку в переменную ссылку, вам не нужно приводить ее к типу str.
requests.get(link) // is good enough.
Кроме того, если вы хотите напечатать содержимое ответа,
print(res.text)
Не совсем понял вопрос, но вы можете проверить статус ответа по:
res = requests.get(link)
if res.status_code:
#Bad Code - 400s/500s
else:
#All good
Кроме того, некоторые сайты не разрешают запросы.Вы можете попытаться быть более «человечным», добавив заголовки с помощью user-agent, а также используйте сеанс.Сессия сохранит куки.(вроде как с указанием состояния)
session = requests.session()
session.headers['User-Agent'] = "YOUR USER AGENT HERE"
session.get("https://www.amazon.com/")
res = session.get(link)
print(res.text)
На некоторых сайтах для загрузки страницы требуется JavaScript.Если это так, вы захотите использовать селен.использование запросов не будет загружать страницу JavaScript.
Или, если вы хотите сначала загрузить страницу с помощью javascript, и хотите использовать запросы:
session = requests.session()
session.headers['User-Agent'] = "YOUR USER AGENT HERE"
browser = webdriver.Firefox(executable_path=r'D:\PythonTool\AmzTool\geckodriver.exe')
browser.get(link)
for cookie in driver.get_cookies():
c = {cookie['name']: cookie['value']}
session.cookies.update(c)
browser.close()
res = session.get(link)
print(res.text)