Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/302.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python对Pixabay的请求_Python_Python Requests_Cloudflare_Pixabay - Fatal编程技术网

Python对Pixabay的请求

Python对Pixabay的请求,python,python-requests,cloudflare,pixabay,Python,Python Requests,Cloudflare,Pixabay,我正试图向皮克斯贝发送一个请求 这是我的密码 导入请求 url='1〕https://pixabay.com' 标题={ “用户代理”:“Mozilla/5.0(Macintosh;英特尔Mac OS X 10_15_3)AppleWebKit/537.36(KHTML,如Gecko)Chrome/80.0.3987.100 Safari/537.36” } req=请求.get(url,headers=header) 打印(请求状态\ U代码) 打印(请求标题) 打印(请求文本) 它不会工作

我正试图向皮克斯贝发送一个请求

这是我的密码

导入请求
url='1〕https://pixabay.com'
标题={
“用户代理”:“Mozilla/5.0(Macintosh;英特尔Mac OS X 10_15_3)AppleWebKit/537.36(KHTML,如Gecko)Chrome/80.0.3987.100 Safari/537.36”
}
req=请求.get(url,headers=header)
打印(请求状态\ U代码)
打印(请求标题)
打印(请求文本)
它不会工作(403错误)。
如何才能工作?

Pixabay具有Cloudflare安全性,如果您从列入黑名单的IP连接,则需要解决验证码问题

为了绕过这个问题,您必须首先通过浏览器连接,然后将标题和cookie复制到python脚本中。这对我来说是可行的,但为了访问该网站,您必须更换像
\uu cfduid
这样的部件,这是您的cloudflare指纹。还要检查您的用户代理是否正确

import requests

url = 'https://pixabay.com/'
header = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3835.0 Safari/537.36',
    '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',
    'Upgrade-Insecure-Requests': '1',
    'Host': 'pixabay.com'
}

cookie = {
    '__cfduid': '<redacted>',
    'cf_clearance': '<redacted>',
    'anonymous_user_id': '<redacted>',
    '_sp_ses.aded': '*',
    '_sp_id.aded': '<redacted>',
    'is_human': '1',
    'client_width':'1540'
}
req = requests.get(url, headers=header, cookies=cookie)

print(req.status_code)
print(req.headers)
导入请求
url='1〕https://pixabay.com/'
标题={
“用户代理”:“Mozilla/5.0(Windows NT 10.0;Win64;x64)AppleWebKit/537.36(KHTML,如Gecko)Chrome/77.0.3835.0 Safari/537.36”,
“接受”:“text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8”,
‘接受语言’:‘en-US,en;q=0.5’,
“接受编码”:“gzip,deflate”,
“升级不安全请求”:“1”,
“主机”:“pixabay.com”
}
cookie={
“\uu cfduid”:”,
“cf_清除”:“,
“匿名用户id:”,
“_sp_ses.aded”:“*”,
“_sp_id.aded”:”,
“是人吗?”:“1”,
“客户端宽度”:“1540”
}
req=requests.get(url,headers=header,cookies=cookie)
打印(请求状态\ U代码)
打印(请求标题)

我试图通过浏览器连接,结果发现您的IP可能已被列入黑名单。Cloudflare安全要求您在允许连接到站点之前解决验证码问题。@IsPach虽然我同意您的代码和Cloudflare,但我必须说这与列入黑名单的IP无关,因为我的IP没有被列入黑名单,但他的代码仍然不适用于我。赞成你的解决方案however@isopach非常感谢。但是我无法确定Chu clearance是什么。@Ispoach我也可以在浏览器中正常连接,但当我尝试此代码时,它会向我发送captcha。@Ispoach噢,我无法确定它,但我能够通过使用selenium chromedriver解决此问题。谢谢你的帮助