爬虫
文章平均质量分 68
半吊子Py全栈工程师
失败的人只有一种,就是在成功之前放弃的人。
展开
-
大众点评 与 美团 与饿了么
好久没有写博客了~~ 自从换了工作就一直忙 一直忙~~ 现在腾出点时间,记录一下最近遇到的一些问题最近主要写了 大众点评 美团 和饿了么的一些东西 ,这里不纠结具体细节,只说一下遇到的各种坑1.大众点评: 在3个中 我觉得难度最低吧,最坑的一点是ip验证,一个ip只有通过了验证码 才能访问一些东西,但是这个可以通过其它接口绕过,然后不用登陆账号 通过h5 / 小程序 接口,能获取到...原创 2019-05-20 18:18:24 · 2709 阅读 · 7 评论 -
HTML,JS禁止鼠标右键、禁止全选、复制、粘贴的方法
禁止鼠标右键、禁止全选、复制、粘贴;oncontextmenu事件禁用右键菜单; js代码:document.oncontextmenu = function(){ event.returnValue = false;}// 或者直接返回整个事件document.oncontextmenu = function(){ return false;}onsele...转载 2018-09-07 15:02:34 · 532 阅读 · 0 评论 -
抓手机app可能出现的问题及解决方式
概况:看了会大佬调试各种app,写各种插件,然后发现有一个很好的办法1.当我们使用fiddler进行抓取https包的时候,有可能安装了证书也获取不到,这个时候,可能就是服务器端进行了验证,这个时候,大佬们直接使用---第一、使用Xposed拦截系统的证书校验功能,这个网上有大神给出了hook模块代码,可以去github上搜JustTrustMe项目代码即可,就一个简单类,导入Xposed...原创 2018-09-10 18:36:27 · 912 阅读 · 1 评论 -
汽车之家爬虫(autohome)
项目的请求url类型https://k.autohome.com.cn/detail/view_01cezq86y568r3ad1m6ws00000.html?st=4&piap=0|3170|0|0|1|0|0|0|0|0|1#pvareaid=2112108 以前有写过汽车之家的爬虫,但是有一段时间没有爬了,所以网站也更新了。 现在2018.8.23号的情况是这样,请求...原创 2018-08-23 18:13:57 · 7179 阅读 · 0 评论 -
pytesseract psm 选项参数
最近写*车之家的爬虫,遇到动态,扭曲的自定义字符,以前直接比对不变的字符部分已经不行了,想了半天,对字符的操作不是很了解,所以就想到用orc来直接识别好了遇到问题,使用pytesseract进行操作的时候,添加了中文的语言的选项,但是不添加psm参数时,识别不出来。经过一番查找 找到应该加上--psm 8 ,将整个图像当初一个汉字来操作 Page segment...原创 2018-08-17 11:40:34 · 18450 阅读 · 0 评论 -
自定义字符反爬
最近临时受命,要针对采集我司网站的爬虫进行反制。虽然不太熟悉这个领域,但既然分到咱这儿了,那就上呗,有啥说的,谁让咱是“全栈工程师”呢(牛逼吹的大了点)。原本公司已经有了一套字体反爬的机制,但效果还是不很理想。花了一周的时间进行研究,最终在现有反爬基础之上,总结了本文要讲的方案。说是终极方案,是有些吹牛了,大家都知道爬虫和反爬之家的道高一尺魔高一丈的关系。但这个方案可以很大程度上可以...转载 2018-08-16 17:11:04 · 776 阅读 · 0 评论 -
去表情字符串
try: microblog_device = re.findall(r'feed_from W_textb.*?nofollow">(.*?)<.*?div>', i, re.S)[-1] microblog_device = re.sub(u'[\uD800-\uDBFF][\uDC00-\uDFFF]|[\U00010000-\U0010ffff]|\ud...原创 2018-08-03 14:11:19 · 876 阅读 · 0 评论 -
mysql存储utf-8数据时有表情问题
从网络中取下的数据解析后不能插入数据库,提示某个字段有问题,问题提示如下: 1 SQLException: Incorrect string value: '\xF0\x9F\x98\x84' for column 'wei_content' at row 1 查阅资料后发现,是由于emoji字符和数据库有差异,不能直接存储解决方案一:将内容中...原创 2018-08-02 10:23:38 · 681 阅读 · 0 评论 -
基于Node.js实现一个小小的爬虫
1.本次爬虫目标:从拉钩招聘网站中找出“前端开发”这一类岗位的信息,并作相应页面分析,提取出特定的几个部分如岗位名称、岗位薪资、岗位所属公司、岗位发布日期等。并将抓取到的这些信息,展现出来。 初始拉钩网站上界面信息如下: 2.设计方案:爬虫,实际上就是通过相应的技术,抓取页面上特定的信息。这里主要抓取上图所示岗位列表部分相关的具体岗位信息。首先,抓取,就得先有地...转载 2018-08-10 18:06:28 · 608 阅读 · 0 评论 -
XPath与lxml_4功能函数
实用功能函数,更好的进行模糊搜索。 1 starts-with函数用法:xpath('//div[stars-with(@id,"test")]')解释:选取id值以test为开头的div节点 2 contains函数用法:xpath('//div[contains(@id,"test")]')解释:选取id值包含test的div节点 3 and用法:x...转载 2018-07-30 18:05:55 · 426 阅读 · 0 评论 -
连接超时重发装饰器
import osimport loggingimport timeimport requestsimport logging_setfrom bwpptp_cmd_01 import ip_changedef ip_sub(): """跟换ip""" os.chdir("bwpptp_cmd_01") ip_change.change() log...原创 2018-07-18 14:36:02 · 406 阅读 · 0 评论 -
百度指数 爬虫
2018.11.6 更新 跳转链接百度指数 返回的数据不好获取,这里就使用selenium 加 图像识别1.需要获取数据的话,必须先登录百度,一个账号一天最多请求300次,PC端和手机端次数是分开的2.获取数据 需要使用selenium 截图 ,然后使用图像识别来进行识别数字就行,然后我们将识别出来的数据保持 简单尝试的代码,如果需要大批量获取数据,就需要很多贴吧账号,redi...原创 2018-06-29 18:38:44 · 10974 阅读 · 2 评论 -
破解极验滑动验证码
一 介绍 一些网站会在正常的账号密码认证之外加一些验证码,以此来明确地区分人/机行为,从一定程度上达到反爬的效果,对于简单的校验码Tesserocr就可以搞定,如下 但一些网站加入了滑动验证码,最典型的要属于极验滑动认证了,极验官网:http://www.geetest.com/,下图是极验的登录界面 现在极验验证码已经更新到了 3.0 版本,截至 2017 年 7 月全球已有十...转载 2018-06-17 10:15:13 · 2367 阅读 · 0 评论 -
有道登陆解密
简单分析网页,可以发现password是通过加密在传输我们开启debug调试,找到加密的js文件,拷贝下来,然后在我们程序中调用js文件得到返回值成功登陆import requestsimport execjs# http://account.youdao.com/login老接口地址url = "https://logindict.youdao.com/login/acc/login"...原创 2018-06-02 16:00:46 · 826 阅读 · 0 评论 -
Android逆向之旅---分析某直播App的协议加密原理以及调用加密方法进行协议参数构造
一、前言随着直播技术火爆之后,各家都出了直播app,早期直播app的各种请求协议的参数信息都没有做任何加密措施,但是慢慢的有人开始利用这个后门开始弄刷粉关注工具,可以让一个新生的小花旦分分钟变成网红。所以介于这个问题,直播App开始对网络请求参数做了加密措施。所以就是本文分析的重点。逆向领域不仅只有脱壳操作,一些加密解密操作也是很有研究的目的。二、抓包查看加密协议本文就看一款直播app的协议加密原...转载 2018-06-15 18:02:41 · 988 阅读 · 0 评论 -
Android逆向之旅---Android中分析某音短视频的数据请求加密协议(IDA动态调试SO)第一篇
一、前言最近萌发了一个做app的念头,大致什么样的app先暂时不说,后面会详细介绍这个app的开发流程和架构,不过先要解决一些技术前提问题,技术问题就是需要分析解密当前短视频四小龙:某音,某山,某拍,某手这四家短视频的数据请求加密协议,只有破解了加密协议,才能自定义数据请求拉回数据。不多说了,本文先来第一站搞定某音和某山这两个数据请求的加密协议,为什么说是这两个呢?因为我们在后面分析会发现这两个a...转载 2018-06-15 18:01:33 · 1480 阅读 · 0 评论 -
Scrapy 调用讯代理动态转发BUG 解决
问题:最近找一些代理来使用 , 用到了讯代理的动态转发,使用requests能正常使用,但是使用Scrapy框架调用的时候,怎么都调用不了。异常是没有特定的头部信息,但是请求是解决:先使用抓包工具,查看程序发出去的请求的头信息,发现是没有我添加的头部信息,先是觉得可能自己加错误了,但尝试几次,在几个可以添加header的地方都添加,结果是都不能,最后觉得应该是框架的锅。然后在框架里面寻找发...原创 2018-09-07 16:59:04 · 2772 阅读 · 8 评论 -
百度指数 爬虫 更新版
current time: 2019.3.21 正常今天跑了一下数据,发现百度随机返回缺失的数据~~,这就有点坑了对此 我们就只能更换获取数据的接口了,我们更改接口以后,就没有缺失数据的情况了!!!current time: 2018.11.617.23 正常昨天晚上有人跟我说百度指数更新了,今天看了下,更新了下代码个人感觉是降低了难度,极大的减少了请求次数。这一...原创 2018-09-28 17:51:06 · 9260 阅读 · 4 评论 -
appium 多开
最近跑一个app 使用的是appium,单开太慢了~,就想多开,结果遇到一个问题,最后解决了,这里记录一下! self.desired_caps = { "platformName": PLATFROM, "deviceName": DEVIE_NAME, "udid":UDID, ...原创 2019-03-26 13:48:55 · 2127 阅读 · 1 评论 -
一行代码解决 window.navigator.webdrive 的问题
from selenium.webdriver import Chromefrom selenium.webdriver import ChromeOptionsoption = ChromeOptions()option.add_experimental_option('excludeSwitches', ['enable-automation'])driver = Chrome(o...转载 2019-03-11 16:52:34 · 6131 阅读 · 6 评论 -
拼多多 anti_content 解密
当前时间:2019/3/4 14:44:57最近有些时间里,时不时听到拼多多 市值多少啦,买东西怎么了啊,被赞羊毛了啊!然后就想花了一天半来分析 拼多多的前端js这里我使用的接口是http://mobile.yangkeduo.com手机网页端,其中主要的js代码就是截图中的search_result.js(我这里使用的是关键字搜索商品)在请求的过程中 有2个需要注意的...原创 2019-03-04 17:57:22 · 17155 阅读 · 55 评论 -
携程机票查询
比较简单,直接放代码,代码仅供学习。import requests, re, json, time, randomcity_listed = {"阿勒泰": "AAT", "兴义": "ACX", "百色": "AEB", "阿克苏": "AKU", "鞍山": "AOG", "安庆&quo原创 2019-03-08 18:14:44 · 3769 阅读 · 2 评论 -
记:当爬虫无路可走的时候
最近帮一朋友"了解" http://app1.sfda.gov.cn 食药局 这个网站下的一些数据,首先 一上来就正按照之前的正常操作: 第一条路:分析js找到加密参数是如何生成的,然后发现debug 模式被ban了,调试半天不知道如何解除debug限制!好了,debug 模式开不了,就别想分析js是怎么运行的了,于是这条路gg。 第二条路:使用seleni...原创 2019-01-22 17:22:49 · 874 阅读 · 4 评论 -
【Fiddler为所欲为第二篇】像OD一样调试
转载自 https://www.52pojie.cn/thread-854434-1-1.html导语:其实Fiddler隐藏的功能太多太多,其调试功能也是异常强大,可以说是抓包界的“OllyDbg”并不为过。接下来,教大家如何使用Fiddler进行调试、解析,甚至封包“逆向”! 一、像OD一样定制菜单 1.1定制rule菜单的子菜单 // 定义名为52pj的子菜...转载 2019-01-31 15:17:18 · 1187 阅读 · 0 评论 -
Fiddler大解析!抱歉,抓包抓得好真的可以为所欲为(一)
转载自 https://www.52pojie.cn/thread-854434-1-1.html 狂暴补师亚丝娜说起抓包,很多人以为就是用个工具,简简单单地抓一下就可以了。昨天在面试一个安卓逆向,直接告诉我【抓包没有技术含量】。在这里,我必须发一个教程,解析一下抓包神器——Fiddler。Fiddler仅仅是一个抓包工具?不好意思,Fiddler用得好,真的可以为所欲为。Fiddler的作...转载 2019-01-31 15:12:49 · 9842 阅读 · 4 评论 -
中国商标网 -爬虫
最近有时间,找了一些比较麻烦的网站来练手,然后想起来 以前说要弄商标网的,今天就又上去看了下! 以前转载的链接 :商标局网请收下我的膝盖 上去查看了下,感觉怎么参数这么明显了!!!??? 应该是取消了很多爬虫限制! 然后模拟请求的试了下,请求成功,成功获取到数值! 使用的接口是:http://sbgg.sai...原创 2019-01-24 18:39:22 · 13879 阅读 · 19 评论 -
appium + 真机 获取微信公众号 信息
2018.11.30昨天简单获取了一下微信朋友圈,算是对appium 又回顾了一遍,今天爬一波微信公众号,改天研究一下微信app的加密直接上代码:import timefrom lxml import etreefrom appium import webdriverfrom selenium.webdriver.common.by import Byfrom seleniu...原创 2018-11-30 18:45:07 · 3205 阅读 · 2 评论 -
appium 之爬取微信朋友圈
2018.11.30 号我的相关工具:appium desktop v1.9.1 虚拟机 夜神模拟器 v6.2.2.7 1.相关看了一下 网络开发爬虫实战 这本书里面appium 相关内容后写的import timefrom appium import webdriverfrom selenium.webdriver.common.by import Byfrom selen...原创 2018-11-30 10:45:16 · 3999 阅读 · 7 评论 -
1024程序员节 - 分享一个抖音视频下载程序
在网上调用别人的接口来实现的功能 import requestsimport execjs# 生成参数sdef generateStr(a): js = ''' test = function(a) { var c = function() { for (var d = 0, ...原创 2018-10-24 15:16:29 · 6820 阅读 · 0 评论 -
如何让你的Python爬虫采集得更快
如何让Python爬虫采集的更快,如何处理海量数据的下载是我们一直探索和研究的对象。下面是我们从数学角度给出的一些分析以及我们的一些经验分享。 假设线程数为n,线程中下载平均用时为td,线程中数据处理部分(纯计算)用时为tc。由于单个Python进程只能使用单CPU核心,因此总的数据处理耗时应是各线程tc的累加即n*tc。因为下载是阻塞操作,CPU可以几乎同时处理所有下载,因此总的下载耗...转载 2018-10-23 17:16:02 · 1883 阅读 · 0 评论 -
如何突破网站对selenium的屏蔽
使用selenium模拟浏览器进行数据抓取无疑是当下最通用的数据采集方案,它通吃各种数据加载方式,能够绕过客户JS加密,绕过爬虫检测,绕过签名机制。它的应用,使得许多网站的反采集策略形同虚设。由于selenium不会在HTTP请求数据中留下指纹,因此无法被网站直接识别和拦截。这是不是就意味着selenium真的就无法被网站屏蔽了呢?非也。selenium在运行的时候会暴露出一些预定义的Java...转载 2018-10-23 15:13:25 · 28945 阅读 · 16 评论 -
Android 反编译神器jadx的使用
一、前言今天介绍一个非常好用的反编译的工具 jadx 。jadx 的功能非常的强大,对我而言,基本上满足日常反编译需求。jadx 优点:图形化的界面。拖拽式的操作。反编译输出 Java 代码。导出 Gradle 工程。这些优点都让 jadx 成为我反编译的第一选择,它可以处理大部分反编译的需求,基本上是我反编译工具的首选。接下来我们就来看看,jadx 如何使用吧。二、使用 jadx2.1 安装 j...转载 2018-06-15 11:24:00 · 1915 阅读 · 0 评论 -
百度地图采集器
# -*- coding: utf-8 -*-from PyQt5 import QtCore, QtGui, QtWidgetsimport timeimport requestsimport jsonimport openpyxlimport codecsclass Ui_MainWindow(object): def setupUi(self, MainWindow): ...原创 2018-06-01 10:37:50 · 2303 阅读 · 0 评论 -
记录抓取soul app(一)
今天闲逛APP Store的时候,发现一个叫做soul的app ,感觉蛮有意思,如何下载,查看了一下,发现用手一点一点的看太麻烦了,然后赶紧把手机调到代理模式,用Fiddler来查看查看搭建好环境发现刷新广场的消息,实时获取的消息是一个get请求,然后返回回来的数据是一个json格式的数据,但是里面有2个参数是我们不知道的这2个参数分别是sign 和 nonce,尝试去请求的话,参数不对会返回““...原创 2018-06-07 23:28:01 · 18026 阅读 · 16 评论 -
requests简单爬取安居网租房信息
对pyquery不是很熟,所以是练习一下用pyquery来筛选数据,data文件里面是2000个浏览器请求头,每次发生数据前随机获取一个,筛选的数据只能获取50页,3000条,将条件设的更详细点简要代码如下import requestsimport reimport pymongofrom pyquery import PyQuery as pqimport randomimport timefr...原创 2018-04-02 21:31:16 · 3265 阅读 · 0 评论 -
简单使用resquests爬取雪球网数据,分析股票走势
简单使用resquests爬取雪球网数据,分析股票走势import requestsimport pymongoimport json# 数据库初始化client = pymongo.MongoClient("localhost", 27017)# 获得数据库db = client.gupiao# 获得集合stu = db.lushenheaders = {"Accept" : "applicat...原创 2018-04-01 22:21:30 · 7024 阅读 · 4 评论 -
使用selenium爬取百合网
今天在公司又听同事说到相亲的事,然后想爬取上海的用户信息看看,先查看了一下电脑版的百合网,发现必须要登录,数据一次性只能拿取6-8条,然后在查看手机端,也是必须要登录,数据通过拿取json文件,可以一次性GET方式拿取100条,还可以通过设置参数,设置筛选条件,所以决定使用手机端来爬 先用scrapy简单的尝试,发现数据和自己设置的条件是不一样的,检测过后,发现是假数...原创 2018-03-26 17:23:38 · 7468 阅读 · 0 评论 -
使用python3登陆12306网站
一、一些用到的技术 1.1解析验证码(联众-收费,两分钱一个) 验证码识别设计机器学习,没有耗费时间去实现,所以采用了第三方(联众)的在线打码,注册充值便可使用,识别率挺高的,验证码识别种类不少,充了五十块玩了好久还剩不少。具体地址http://v1-http-api.jsdama.com/api.php?mod=php 1.2 具体实现代码,此部分负责登录的部分逻辑(__init_...原创 2018-04-24 12:23:05 · 938 阅读 · 0 评论 -
当爬虫碰到加密请求参数
前言:最近破解一个网站的cookie,想了一些办法,因为JavaScript反面的原因没有成功,然后特地找了一些资料来看,最后成功了,在这里就不提了,只转载一篇给我点启发的文章前言:之前查找一个网站的加密方式找了一个星期。放弃了。过了两天又满血归来,一个小时破解了注:本篇博客,不会讲解任何加密相关的算法。爬虫破解加密算法,可以完全不懂加密算法,需要的是耐心先说说最近碰到反爬虫相关的方式吧1.加密+...转载 2018-03-31 18:52:00 · 7657 阅读 · 1 评论 -
使用搜狗接口爬取微信公众号
这里使用搜狗接口来爬取微信公众号,使用的代理池是以前使用redis和flask一起来维护的,在网上爬取的免费代理(想要详细了解的可以到前面文章了解)主文件代码如下,尽量写了备注from urllib.parse import urlencodeimport pymongoimport requestsfrom lxml.etree import XMLSyntaxErrorfrom request...原创 2018-03-30 22:29:26 · 12604 阅读 · 0 评论