过cloudflare,使用cfscrape,以及cfscrape挂代理的方式
程序员文章站
2022-07-13 16:54:15
...
一个简单的python模块,可以绕过cloudflare的反bot页面(也称为"我处于攻击模式"或iuam),它通过请求实现。支持Python2.6-3.7版本。
PS:下面所有运行环境都是在外网的服务器上
只需运行
pip install cfscrape。
您可以使用
pip install-u cfscrap进行升级。
pypi包位于 https://pypi.python.org/pypi/cfscrape/
github https://github.com/Anorov/cloudflare-scrape
#基础访问类型
import cfscrape
from parsel import Selector
import requests
session = cfscrape.create_scraper(delay=10)
response = session.get(url)
下面是挂代理的方式,代理需要在可访问外网的服务器上才可以进行,并且需要将服务器加入白名单。
注册个人或者公司认证后有测试量,可以进行免费测试
注册地址,打开注册
import cfscrape
from parsel import Selector
import requests
response = requests.get("http://tiqu.linksocket.com:81/abroad?num=1&type=2&lb=1&sb=0&flow=1®ions=&port=1&n=0")
ip = response.json()["data"][0]["ip"]
port = response.json()["data"][0]["port"]
ip = "{}:{}".format(ip, port)
proxies = {
"http": "http://{}".format(ip),
"https": "https://{}".format(ip),
}
ttt = requests.get("http://myip.top", proxies=proxies)
print(ttt.text)
ssss = cfscrape.create_scraper(delay=10)
cookies,user_agent= ssss.get_cookie_string("https://apkpure.com/", proxies=proxies, allow_redirects=True)
response = ssss.get("https://apkpure.com/cn/search?q=com.facebook.katana",proxies=proxies)
# # print(web_data)
if "开发者" in response.text:
print("访问成功")
down_html = Selector(text=response.text)
info_url_list = down_html.css("div#search-res dd")
for down_html in info_url_list:
apk_name = down_html.css("p.search-title>a::text").extract_first()
print(apk_name)
print("=============")
else:
print(response.text)
print("访问失败")
如果能对你有帮助,是我的荣幸。谢谢。
上一篇: 注册工具类
下一篇: 稳定实用国外服务器需要注意七大要点