![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
爬虫
九成N
这个作者很懒,什么都没留下…
展开
-
selenium绕过浏览器指纹的方法
【selenium绕过浏览器指纹的方法:1、使用stealth.min.js2、使用selenium-stealth3、使用undetected-chromedriver原创 2022-09-19 09:36:29 · 1031 阅读 · 0 评论 -
Fiddler + 夜神模拟器 实现APP数据抓包
Fiddler+夜神模拟器进行APP抓包注意:在Fiddler里长按左键才出现菜单或者弹框1.下载Fiddlerhttps://www.telerik.com/download/fiddler2.下载夜神模拟器下载安装很简单的,安装好后的界面需要调整为手机竖屏3.配置fidder捕获HTTPS会话和端口连接设置tools-options安装好证书,如图勾选即可。注意:fiddler配置好了需要重启5.夜神模拟器配置WLAN在windows上cmd终端输入ipconf原创 2020-10-09 17:49:11 · 1170 阅读 · 1 评论 -
selenium配置chrome浏览器的选项
在使用selenium浏览器渲染技术,爬取网站信息时,默认情况下就是一个普通的纯净的chrome浏览器,而我们平时在使用浏览器时,经常就添加一些插件,扩展,代理之类的应用。相对应的,当我们用chrome浏览器爬取网站时,可能需要对这个chrome做一些特殊的配置,以满足爬虫的行为。常用的行为有:禁止图片和视频的加载:提升网页加载速度。添加代理:用于翻墙访问某些页面,或者应对IP访问频率限制的反爬技术。使用移动头:访问移动端的站点,一般这种站点的反爬技术比较薄弱。添加扩展:像正常使用浏览器一样的功能原创 2020-08-11 13:35:27 · 700 阅读 · 0 评论 -
Python中requests请求的内容编码问题
问题:用requests请求页面,用print(req.encoding)查看网页编码,有时候会显示:ISO-8859-1原因:requests会从服务器返回的响应头的 Content-Type 去获取字符集编码,如果content-type有charset字段那么requests才能正确识别编码,否则就使用默认的 ISO-8859-1. 一般那些不规范的页面往往有这样的问题.解决办法:response.encoding = response.apparent_encodingrequests的原创 2020-08-11 13:29:50 · 1102 阅读 · 0 评论 -
解决Python3 HTTPS请求时InsecureRequestWarning的问题
使用Python3 requests发送HTTPS请求,已经关闭认证(verify=False)情况下,控制台会输出以下错误:InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warni原创 2020-08-11 13:25:18 · 466 阅读 · 0 评论 -
lxml.etree XMLSyntaxError问题解决方法
lxml解析数据,在使用parse加载本地的html文件的时候出现报错:lxml.etree.XMLSyntaxError: xmlParseEntityRef: no name, line 18, column 258原因:html代码书写不规范,不符合xml解析器的使用规范解决的办法:使用parse方法的parser参数:parser = etree.HTMLParser(encoding=“utf-8”)selector = etree.parse(’./data/lol_1.html’原创 2020-08-11 13:22:26 · 1894 阅读 · 2 评论 -
python中demjson的使用方法
python的json模块只能解析规则的json字符串,即字典的key要用双引号。安装:pip install demjson用法:encode() 将 Python 对象编码成 JSON 字符串decode() 将已编码的 JSON 字符串解码为 Python 对象demo:import demjsond = {“title”:“叶问4:完结篇”, “id”:“26885074”, “rate”:7.0}js_str = demjson.encode(d,encoding=原创 2020-08-11 13:12:58 · 1387 阅读 · 0 评论 -
execjs执行js编码错误的解决方法
python 使用execjs执行接js时报错UnicodeDecodeError:Exception in thread Thread-5:Traceback (most recent call last):File “d:\python\python36\Lib\threading.py”, line 916, in _bootstrap_innerself.run()File “d:\python\python36\Lib\threading.py”, line 864, in runse原创 2020-08-11 13:08:54 · 1061 阅读 · 0 评论 -
scrapy中使用讯代理转发
scrapy源代码中查找http11.py文件,相对路径为:Lib/site-packages/scrapy/core/downloader/handlers/http11.py找到下面内容,注释掉:if isinstance(agent, self._TunnelingAgent):headers.removeHeader(b’Proxy-Authorization’)否则proxy-authorization会被去除,动态转发失效。自定义下载中间件:class ProxyIPMiddlew原创 2020-08-11 12:53:14 · 277 阅读 · 0 评论 -
chrome:initiator使用
Initiator:发送请求的对象,主要包含Parser和ScriptInitiator: The object or process that initiated the request. It can have one of the following values:发起请求的对象或进程。它可以具有以下值之一:1.Parser - Chrome’s HTML parser initiated the request.解析器 - Chrome的HTML解析器发起了请求。2.Redirect -原创 2020-08-11 12:50:55 · 2755 阅读 · 0 评论 -
SOCKS5 代理
SOCKS协议SOCKS:防火墙安全会话转换协议 (Socks: Protocol for sessions traversal across firewall securely) SOCKS协议提供一个框架,为在 TCP和UDP域中的客户机/服务器应用程序能更方便安全地使用网络防火墙所提供的服务。协议工作在OSI参考模型的第5层(会话层),使用TCP协议传输数据,因而不提供如传递 ICMP信息之类的网络层网关服务。SOCKS代理采用socks协议的代理服务器就是SOCKS服务器,是一种通用的代理服务原创 2020-08-11 11:52:54 · 745 阅读 · 0 评论 -
Cookie的属性介绍
name属性name属性是必需的,它是一个键值对,用于指定Cookie的键。value属性value属性是必需的,它是一个键值对,用于指定Cookie的值。expires属性expires属性用于指定Cookie过期时间。它采用UTC或GMT格式,比如通过new date().toUTCString()或new Date().toGMTString()获取到的Thu, 09 Aug 2018 03:17:40 GMT。如果不设置该属性,或者设为null,Cookie只在当前会话(session)原创 2020-08-11 11:49:04 · 557 阅读 · 0 评论 -
常见浏览器User-Agent配置
1.Android• Mozilla/5.0 (Linux; Android 4.1.1; Nexus 7 Build/JRO03D) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.166 Safari/535.19• Mozilla/5.0 (Linux; U; Android 4.0.4; en-gb; GT-I9300 Build/IMM76D) AppleWebKit/534.30 (KHTML, like Gecko) Vers原创 2020-07-17 21:46:03 · 432 阅读 · 0 评论 -
celery 定时任务不被执行的问题解决办法
在使用celery 执行定时任务时,发现任务不会执行原因:celery使用的是UTC时区解决办法:定时需要设置的时区在配置文件中指定:CELERY_TIMEZONE = ‘Asia/Shanghai’CELERY_ENABLE_UTC=True在程序中指定:app.conf.enable_utc = Falseapp.conf.timezone = “Asia/Shanghai”...原创 2020-07-17 21:43:30 · 1104 阅读 · 1 评论