自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 收藏
  • 关注

原创 python微博爬取(仅供学习,其实也没啥学的....),输入检索词,保存为csv格式。

本示例记录一下python爬取微博遇到的坑以及学到的东西。首先不得不承认pyquery在提取信息方便还是相当便捷的,尤其是本次提取文本信息时,相当给力。可能主要还是对各种选择器不熟练吧,遇到一个说一个好。唉..... 遇到的第一个问题是url构造的问题,微博构造url还是比较简单的,在爬取搜索关键词后的信息时其url大致为https://m.weibo.cn/api/container/getIndex?containerid=100103type%3D1%26q%3D%2...

2020-07-16 16:45:14 685 2

原创 爬虫中遇到的几种密码学问题及python实现

1、ASCII编码ASCII编码虽然不是加密,但是是后边的基础。因此先铺垫一下。ASCII编码是基于拉丁字母表的一套计算机编码系统,主要用来表示英语和其他西欧语言,约定了字符与二进制之间的映射关系。用8为二进制数来表示单个字符。如小写字母a,其ASCII码为97,其对应的二进制数位01100001。ASCII码默认使用7为二进制数来表示所有的大写字母、小写字母、数字(0-9)、标点符号和特殊的控制符。8位中的最高位始终为0。据说是因为8是2的三次,所以选用8位而不是7位来表示。2 、Base

2020-07-13 21:16:10 433

原创 JavaScript学习笔记二 (学自拉勾教育崔大神)

逆向思路:通过XHR断点,确定发送XHR请求的位置。然后通过执行栈,找到构造参数的JavaScript代码所在位置。将JavaScript构造参数的逻辑用python实现,从而构造加密参数值,实现正确的url请求。爬取的网页为:https://dynamic6.scrape.cuiqingcai.com/首先列表页的请求url为,第一页与第二页的分别为:能够看出列表页url需要构建的参数为limit,offset,token。其中limit为每页的个数为10,offset可以看作是它的偏

2020-07-13 19:39:23 257

原创 JavaScript逆向学习历程一(有道翻译)

有道翻译知识总结第一步:查看需要构造的参数,发现其中i为我们要搜索的词,其余参数可能需要计算的有salt,sign,ts,bv。第二步,寻找构造参数的javascript代码所在位置,观察构造逻辑。切换至调制器,在火狐中ctrl+shift+f进行全局搜索,比如说查找salt。依次点击寻找,查看哪段代码实现了salt的生成。最终确定要研究的部分。最后发现在salt:i,里边具由salt生成的逻辑代码。并且里边包括了其余变量的生成方法。ts对应的值为r,r的生成逻辑为生成一个时

2020-07-12 19:15:31 270

原创 Airtest简单使用及采坑记录

下载地址:http://airtest.netease.com/打开方式:打开下载的文件夹,找到AirtestIDE.exe双击即可打开。连接手机:USB连接方式,将电脑与手机用USB连接,打开手机开发者模式的USB调试。右上角出现设备信息后点connect。如果失败可以尝试数据线拔掉重新接入,接入前注意打开USB调试。连接手机后在poco辅助窗选择合适的poco的类型。此处为android操作方式比较简单:touch 可以去屏幕上选择应用去点击,将应用圈住即可。程序内或自动 写入...

2020-07-11 17:22:14 1069 1

原创 爬虫代理设置笔记(学自拉勾崔大神)

import requestsproxy = ‘127.0.0.1:端口号’ 在本地的某个端口号创建代理服务proxies = {‘http’:'http://' + proxy, 'https':'https://' + proxy}response = requests.get(url, proxies = proxies)如果代理需要认证,在代理前面加上用户名密码即可。proxy = ‘us...

2020-07-08 18:41:40 157

原创 windows下pytorch的安装(无CUDA版)

(学自 哔哩哔哩up主hzzzzzy)本文记录的是在conda环境下安装pytorch。anaconda的安装就不在此赘述了,可手动查教程,比较简单。首先,查看自己与anaconda绑定的Python的版本。我是通过我的pycharm看的。因此我的conda里的Python版本为3.6.打开anaconda prompt创建安装pytorch的环境。conda create --name pytorch python==3.6yy到达这后,输入命令行 conda

2020-07-01 23:07:14 2641 1

原创 淘宝滑动解锁模拟登录并输出首页源代码

淘宝模拟登陆大概分为:点击登陆标签、点击账号输入框、点击密码输入框、滑动滑块解锁、点击登陆。主要问题在滑动滑块解锁,首先要定位滑块位置,确定滑块需要移动多少距离,其次创建动作链对象,最后点住滑块,移动,虽然说有的登陆页面在滑块滑动着貌似有着人机辨别,会根据滑动滑块的速度是否符合人的滑动规律,来判断是否是人为滑动。但是淘宝这貌似不是很严格,所以直接利用selenium的根据唯一move就完成了。最后点击登陆即可。输出源代码利用了selenium的显示等待,即设定一个时间长度,若在这个时间内出现想要

2020-06-30 18:15:07 723

原创 BeautifulSoup的soup.find_all()与 soup.select()赏析

如果我们用BeautifulSoup去解析网页来爬虫,那么90%以上需要用到find_all(),当然如果对CSS更为了解,其实select也是一种相当不错的选择。from bs4 import BeautifulSoupsoup = BeautifulSoup(response.text, 'lxml')这是我们常用的炖汤程序,而对于汤的赏析,就需要用soup.find_all(),soup.select()去细细品味其中滋味。1、find_all()find_all(tag,a...

2020-06-29 21:00:28 7909 2

原创 网络爬虫异常处理总结

在进行大规模网络爬虫的时候,经常会遇到爬了一会突然抛出一个错误来,然后整个程序就停止了运行。而我们在处于学习爬虫初期的同胞,比如我,一旦出现程序错误停止,就不知道如何在修改程序后接着刚刚爬取的位置继续爬取。就算是我们做了比较好的日志输出,知道是再爬取到哪一页时出现问题,但也不得不在这一页或者这一页的前一页重新开始,然后继续爬虫。虽说不是很麻烦,但自己的程序走一半突然停掉了,就好像吃的冰棒吃的好好的突然掉地上,虽然冲冲会变干净,但总觉得它已经不那么美好了。哈哈~ 因此在设计爬虫时,...

2020-06-29 19:03:28 1745

原创 scrapy野蛮式爬取(将军CrawlSpider,军师rules)

如果将Spider比作scrapy爬虫王国的一个元帅,那CrawlSpider绝对是元帅手底下骁勇善战的将军。而其rules,便是善于抽丝剥茧的军师。以下便记录以下一个CrwalSpider的作战过程。1、 首先创建scrapy项目 python -m scrapy startproject 项目名称2、 创建CrawlSpider ...

2020-06-28 10:42:36 553

原创 scrapy垂直爬取及多个item下载问题(爬取某个写真网)

利用scrapy爬虫时我们经常会遇到列表页可以爬取一些信息,详情页又可以爬到一些信息。同时详情页的url需要在列表页请求之后才可以获得。因此就需要垂直爬取,也就是先请求获得详情页的html,解析出详情页后再去请求以获得详情页的内容。同时,如果此时需要保存一些数据,如:列表页保存几个数据,详情页也需要保存几个数据,此时就需要设置多个item来获得。因此,本文记录了遇到垂直爬取与多个item保存并且下载某个item中内容的方法。1 垂直爬取 垂直爬取其实比较简单,主要是就是利用yield ...

2020-06-28 07:27:45 954

原创 scrapy学习总结(学自崔庆才大佬的书以及网上大佬们的博客)

1、scrapy工作路径 简单说明:首先,engine从start_url或者自定义的start_requests()中获得初始的url,url通过请求得到response,如果没有设置callback回调给函数,则默认回调给parse(),如果设置则回调给相应的函数。此时response中包括已经成型的数据以及一些链接。已经成型的数据可以直接传给Item并yield或return给Pipeline保存或者直接导出,而生成的链接可通过callback再次回调给相应的函数,从而解析获得的链接的内容...

2020-06-27 18:59:26 374

原创 Python利用selenium识别简单验证码(学习笔记)

#思路:首先截取带有验证码的整个页面,保存为图片,此时可通过浏览器的截屏操作直接获取,然后根据验证码标签所在位置截取验证码所在标签,保存为图片。因是在截取图片上进行裁剪,此时采用PIL中的Image库并在验证码图片坐标基础上进行截屏,最终通过tesserocr库,将获取的验证码图片输出为字母、数字等。from selenium import webdriverfrom selenium.webdriver.common.keys import Keysfrom selenium.webdriver..

2020-06-18 10:43:08 690

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除