爬虫
little_people
这个作者很懒,什么都没留下…
展开
-
Scrapy数据库异步插入的坑
重要参考:将爬虫数据插入SQL数据库是为什么出现重复?重要参考:scrapy爬虫,数据入库后一直有重复数据,百思不得其解!!求指导这是跟我遇到相同问题找到的两个参考,看了下他们的解释,大致原因如下:因为数据库柄插入操作是次线程的,与主线程不同步,但是你传递给数据库柄的item 是引用传递,如果主线程中改变item的值了,那么次线程中的item也会改变,所以当数据库真正要插入第...原创 2019-10-23 09:58:21 · 1612 阅读 · 2 评论 -
python运行js---execjs 使用
execjs 使用有了selenium+Chrome Headless 加载页面为什么还要用execjs来运行js? selenium+Chrome Headless 必然是爬虫的一大利器,可是缺点依然存在, 性能问题不可忽视。 但这构不成舍弃它而不用的理由。我认为舍弃包括Chrome Headless、PhantomJS在内的无头浏览器 的原因主要有以下几点: 1. 页面结构改变、弹窗(一些...转载 2019-04-02 22:11:54 · 18946 阅读 · 0 评论 -
使用Fidder修改https请求,替换本地js文件
步骤:下载Fidder 设置抓https和解密https 由于知乎采用的是https连接,所以要先设置抓https和解密https 这样就安装了根证书。 安装好根证书后,就可以抓取https了。清除浏览器缓存,并且清除fidder的请求列表。使用浏览器进入知乎登录页面。ctrl+F 搜索 main.app. 关键字 找到后在右边点击AutoResponder...转载 2019-04-02 22:05:51 · 588 阅读 · 0 评论 -
js2py的使用
基本使用:import execjsimport js2pyun ='''function sample(x){ return func2(x)}'''print(js2py.eval_js(un)("Hi"))import js2pyjs = """function escramble_758(){var a,b,ca='+1 'b='84-'...转载 2019-04-02 21:51:24 · 2959 阅读 · 0 评论 -
那些年绕过的反爬手段
无反爬裸站现在一个网站或多或少都会配置一定的反爬措施,毕竟现在一台笔记本的性能比某些小站的服务器都强,如果不加以限制,分分钟就能把你的资源耗尽。前两年的工商网站有个省份没有限制,没多久就把服务器抓瘫了(只能说服务器配置太太太次了);如果你服务器能抗那就更好了,用不了多久就能把你全站数据抓下来。记得两年前收集企业名录,一个网站几百万条用了不到两个小时就抓完了。但现在心态变了,如果遇到一个没有验证...转载 2019-04-02 21:46:11 · 505 阅读 · 0 评论 -
selenium:解决页面元素display:none的方法
在UI自动化测试中,有时候会遇到页面元素无法定位的问题,包括xpath等方法都无法定位,是因为前端元素被设置为不可见导致。这篇博客,介绍下如何通过JavaScript修改页面元素属性来定位的方法。。。1、具体问题常见的页面元素不可见导致的不可定位,都是由于下面的问题:通过查看相关文档,可以看出display:none方法是设置元素不可见,这就是导致为什么通过定位页面元素无...转载 2019-03-29 11:01:31 · 5499 阅读 · 0 评论 -
在windows安装frida环境碰到问题
windows直接安装frida-tools成功后,import frida会导入失败,即会报错误:ImportError: DLL load failed: 找不到指定的模块。后来翻了下往上的信息,大意就是讲Python版本和frida的版本不匹配导致这个错误的,然后解决方案是升级Python就好了。所以我就去frida下载页面瞅了下啊,发现当前版本的的frida支持的Python3.7,如...原创 2019-08-12 13:24:01 · 4587 阅读 · 0 评论 -
爬虫提交form表单中含有(unable to decode value)解决方法
记录一个昨天下午踩到的坑在一次抓取网站的过程中,使用chrome调试时,发现一个参数为:(unable to decode value),解决方案:content=“text/html;charset=GBK”这里只需要使用python的encode方法将编码转换即可demo: btnLogin = "登录" btnLogin = btnLogin.encode("GBK")搜了...原创 2019-07-23 08:47:15 · 1846 阅读 · 0 评论 -
特此声明
我转载的文章的是方便自己查阅的,顺手就记录一下哈哈,真是怕了你们这些人,这么较真,我不是写给你们看的原创 2019-09-03 15:52:30 · 614 阅读 · 0 评论 -
某盾的一些简单分析
最近遇到某控的一个检测机制,很奇怪,不知道为什么在网上找不到任何关于他家的分析。不知道是不是太小众化了。说下遇到的奇怪点吧。但是是做一个注册第一次遇到,然后可能估计因为分析了很久吧,网页刷新了很多次,最后导致本机的浏览器的设备信息被拉黑了吧,导致手动注册都注册不了。登录遇到同样的问题。直接上一段分析吧QQOoQQ['forEach'](function (ooO00o, Q0Q000) {...原创 2019-06-27 15:17:12 · 555 阅读 · 0 评论 -
登录加密算法破解
0x00 前言在日常WEB登录的用户/口令破解中,我们多使用burpSuite针对明文传输、base64加密、MD5加密等进行暴力爆破;查看Burp支持的playload加密方式中包括:URLencode、Base64、SHA、MD5、MD2等:但在日常渗透测试中对WEB系统进行用户或密码暴力破解时,常常会遇到譬如这样的情况:userName=3633756E89341C6CBEF6...转载 2019-04-15 16:09:36 · 2237 阅读 · 1 评论 -
关于 Cookie 的分析(Postman Request Selenium)
本次教程涉及到的软件包括:Chrome浏览器Chrome的插件PostmanPython的Request假设你已经熟悉使用一切,我们直接告诉你结果:Python的Request所有的请求信息在代码本身,不会调用到浏览器的Cookie信息,如果请求中需要验证Cookie需要添加到Hearders中Chrome的插件Postman每次请求可能会调用浏览器保存的Cookie,转载 2018-02-12 14:25:07 · 877 阅读 · 0 评论 -
AttributeError:'str'对象没有属性'items'
你正在传递一个字符串 ; headers不能永远是一个JSON编码字符串,它始终是一个Python字典。该print结果都是骗人的; JSON编码的对象看起来很像Python字典表示法,但是它们远非相同的东西。该requestsAPI明确指出,headers必须是一本字典:headers – (optional) Dictionary of HTTP转载 2018-02-07 14:29:41 · 9917 阅读 · 2 评论 -
如何突破网站对selenium的屏蔽
使用selenium模拟浏览器进行数据抓取无疑是当下最通用的数据采集方案,它通吃各种数据加载方式,能够绕过客户JS加密,绕过爬虫检测,绕过签名机制。它的应用,使得许多网站的反采集策略形同虚设。由于selenium不会在HTTP请求数据中留下指纹,因此无法被网站直接识别和拦截。这是不是就意味着selenium真的就无法被网站屏蔽了呢?非也。selenium在运行的时候会暴露出一些预定义的Java...转载 2019-04-01 08:48:41 · 3085 阅读 · 0 评论 -
使用 headless chrome进行测试
注:文章聚合了现在 headless chrome 介绍和使用方式包含了三个部分 chrome 在 mac 上的安装和简单使用(来自官方) 利用 selenium 的 webdrive 驱动 headless chrome(自己添加) 利用Xvfb方式实现伪 headless chrome 概念Headless模式解决了什么问题: 自动化工具例如 s...转载 2018-05-21 15:32:27 · 1299 阅读 · 0 评论 -
pyspider启动报错:TypeError: initialize() got an unexpected keyword argument ‘io_loop
错误描述:1、pyspider是 0.39版本 2、 安装后运行 出现错误 TypeError: initialize() got an unexpected keyword argument ‘io_loop’原因:python环境中,默认tornado版本是最新的5.0,在4.0之后就废弃了io_loop参数。解决方法: 1、pip uninstall...转载 2018-04-18 13:13:53 · 1692 阅读 · 0 评论 -
爬虫学习笔记--Tor隐藏Ip
因为在爬虫时,如果使用了默认的IP 可能导致自己的IP遭到封禁所以就要隐藏自己的IP 事先说明 爬虫要有度 也要考虑服务器的压力 本篇基于win10 tor的原理http://www.cnblogs.com/likeli/p/5719230.htmlhttp://blog.csdn.net/whiup/article/details/转载 2018-02-22 15:35:05 · 4265 阅读 · 0 评论 -
Cookie的属性和跨域问题
需求:在某页面add的cookie在另一个页面却获取不到。 ——难道cookie只对当前页面有效?学习后发现,cookie除了有name、value和生存时长等这些属性之外,还有很多很重要的属性,而domain属性将指定可访问此cookie的域名,path属性将指定该cookie的页面路径。一、Cookie的属性一个域名下面可能存在着很多个cookie对象,cookie具有多个属性:name字...转载 2018-03-09 11:47:31 · 801 阅读 · 0 评论 -
HTTP基本原理
1. URI和URL这里我们先了解一下URI和URL,URI的全称为Uniform Resource Identifier,即统一资源标志符,URL的全称为Universal Resource Locator,即统一资源定位符。举例来说,https://github.com/favicon.ico是GitHub的网站图标链接,它是一个URL,也是一个URI。即有这样的一个图标资源,我们用URL/U...转载 2018-02-14 16:16:55 · 250 阅读 · 0 评论 -
Python使用requests時遇到Failed to establish a new connection
再寫Zeppelin的CLI工具的時候https://github.com/del680202/zdairi遇到了開起太多connection這樣一個錯誤requests.exceptions.ConnectionError: HTTPConnectionPool(host='xxxxx', port=xxxxx): Max retries exceeded with url: /api/note...转载 2018-02-27 17:31:04 · 49112 阅读 · 8 评论 -
在requests库中可以定制会话级别的cookies,以保证整个通信过程中都可以使用到cookies
#coding:utf-8import requestss = requests.session()s.cookies.set('mycookie','value') #设置会话cookiesr=s.get('https://www.baidu.com')print s.cookies.get_dict()#输出cookies以上代码输出如下:{'mycookie...转载 2018-02-27 13:50:12 · 522 阅读 · 0 评论