爬虫
文章平均质量分 74
冰冷的希望
坚持记录,相互帮助,一起进步
展开
-
【爬虫】charles手机抓包环境设置(设置系统证书)
这个操作很容易,只要获取到root权限就行,你可以直接在文件管理器里把系统证书复制到用户证书的文件夹里,证书是一个.0结尾的文件,我这里是ca499da3.0,如果以前没有安装过用户证书,那用户证书文件夹里只有一个文件,很好找到的。,此时Charles那边应该会有一个确认按钮,确认之后模拟器就会下载证书,下载完完成之后点击安装,模拟器会提醒设置一个锁屏(图案或pin都可以),这时候就可以安装证书了,证书名可以随便写。之后就不受信任了,想要对手机app抓包,就需要把用户证书设置为系统证书(根证书)原创 2023-10-27 12:26:37 · 2910 阅读 · 0 评论 -
【python】多线程下载m3u8分段视频
Windows系统自带的copy命令也可以合并,但是经过我测试,发现合并之后的视频可能会混乱,所以如果视频比较少,可以借助格式工厂等软件合并,如果较多,可以使用Python操作FFmpeg,但我这里没有实现。有些m3u8是加密的,但会在文件里给出秘钥的url,请求一下即可得到秘钥,秘钥一般是一个数字字母组成的字符串。m3u8一般是以m3u8结尾的文件,如果是浏览器,可以按一下F12打开DevTools进行抓包获取m3u8的完整链接,下载之后提取所有视频分段的uri,为了方便操作,我们可以使用m3u8库。原创 2022-10-17 17:23:42 · 2813 阅读 · 0 评论 -
【爬虫】scrapy创建运行爬虫、解析页面(嵌套url)、自定义中间件(设置UserAgent和代理IP)、自定义管道(保存到mysql)
如果你需要再访问新的链接,只需要生成一个新的Request交给调度器,Request对象有一个callback回调函数用于解析新的页面,当然也可以通过cb_kwargs参数把当前解析得到的数据传给回调函数,解析函数最后一定是yield一个Item。scrapy是一个快速、高层次的屏幕抓取和web抓取框架,我们只需要在乎怎么提取数据和保存数据,其他的都交给scrapy完成,所以比较快速高效,而且功能强大,很多东西都是可以自定义配置的。如果你把解析页面什么的都写好了可以使用下面的命令启动爬虫。......原创 2022-08-04 19:10:09 · 878 阅读 · 0 评论 -
【爬虫】多线程、多进程方式爬取糗事百科段子(xpath、etree)
1.简单版因为我们要爬取的网页结构比较简单,这里就不分析了,直接上代码import timeimport requestsfrom lxml import etreeclass QiuShiSpider(object): def __init__(self): self.base_url = "https://www.qiushibaike.com" self.headers = { "User-Agent": "Mozilla/原创 2020-11-08 18:05:10 · 366 阅读 · 0 评论 -
【爬虫】lxml的使用(xpath选择器、获取文本内容、获取属性、string(.))
1.lxmllxml是一个高效率的HTML或XML文档解析库,用C语言写的,所以解析速度很快,我们可以配合xpath语法使用1.1 xpath语法【爬虫】元素定位(xpath、css)1.2 常见的解析库解析器使用方法优点缺点Python标准库BeautifulSoup(markup, “html.parser”)Python的内置标准库执行速度适中文档容错能力强版本容错能力差lxml HTML 解析器BeautifulSoup(markup, “lxml”)原创 2020-11-08 18:03:55 · 5804 阅读 · 0 评论 -
【爬虫】BeautifulSoup4的使用、常用解析器、find()和find_all()、select()
1.BeautifulSoup4BeautifulSoup是一个强大的HTML/XML的解析器,我们主要用它来解析和提取 HTML/XML数据优点: 使用简单,支持CSS选择器、Python标准库中的HTML解析器,也支持 lxml 的 XML解析器缺点: :会遍历整个DOM树,时间和内存逗笑都打,性能不及lxml官方API文档https://beautifulsoup.readthedocs.io/zh_CN/v4.4.0/2.安装pip install beautifulsoup43.原创 2020-11-08 18:00:48 · 3539 阅读 · 0 评论 -
【测试】Selenium的使用(常用属性方法、元素等待、操作cookie、操作元素、无头模式、获取HTML源码)
1.SeleniumSelenium是一个用于Web应用程序测试的工具,可以使用代码控制浏览器,所以一般可以用于测试、爬虫等方向免费开源跨平台,支持Linux、Win、Mac等支持多种浏览器,Chrome、Firefox、Edge等支持python、Java、C#、js等多种语言2.WebDriverSelenium不能直接控制浏览器,得经过webdriver才能与预览器交互,即webdriver是两者之间的桥梁。所以我们需要先下载webdriverChrom浏览器(chromedriv原创 2020-10-25 11:30:55 · 2335 阅读 · 1 评论 -
【爬虫】元素定位(xpath、css)
选择后续元素(子元素),但是无法往前选择元素(父级),可以搭配xpath选择器的。contains是模糊匹配,如果想要精确匹配,可以借助。如果需要多个匹配一起用,可以使用。注意:css选择器可以通过。原创 2020-10-24 19:28:19 · 1424 阅读 · 1 评论 -
【爬虫】使用requests下载文件,实现下载大文件断点续传
requests是一个很棒的HTTP协议请求工具,我们可以用它写爬虫或做测试,关于该库的用法可以参考之前的文章这篇文章主要记录一下使用requests下载文件的方法。原创 2020-10-18 21:57:57 · 11183 阅读 · 2 评论 -
【爬虫】requests请求方式、Response、Session
1.requests该库可以发起http协议的请求,比python原生的urllib更加方便,所以经常会用在爬虫、测试等方向1.1 安装pip install requests -i https://pypi.tuna.tsinghua.edu.cn/simple1.2 请求方式请求方式包括,get、post、put、patch、delete、options、header。使用的时候可以requests.方法名(),例如requests.get()发起GET请求。当然,也可以使用request(原创 2020-10-18 20:12:09 · 2088 阅读 · 0 评论 -
【python】解决网页gb2312编码中文乱码问题
在写爬虫的时候,有时候会遇到非utf-8的网页,可能会造成中文乱码问题,比如说遇到的是gb2312的编码。直接打印中文就会变成乱码标题1.查看网页编码document.characterSet2.正确解码网页使用的是gb2312编码str = requests.get("https://www.xxx.com")data = str.text.encode('latin1').dec...原创 2020-01-20 18:00:55 · 2807 阅读 · 0 评论 -
【python】爬取笑话数据
最近想要一些有关笑话的数据,于是把目标放在了“笑掉大牙”这个网站上。一、分析我们先进入网站首页,可以发现有很多分类我们依次打开这些分类,可以发现结构都是一样的,这样很利于我们爬取数据。每一个分类都列有很多标题,这些标题也很有规律,分别在class为line1和line2的div标签里我们随便打开一个标题进入查看内容。可以发现这些内容都在一个class为content的div里二、代...原创 2019-12-27 18:55:26 · 523 阅读 · 0 评论 -
【python】爬取豆瓣电影Top250(etree、xpath)
一、分析我们先打开top250页面https://movie.douban.com/top250?start=0可以发现每个页面25部电影,共10个页面,每个页面url的start都加25所有电影都在一个class为article的div下,每一部电影都在此div下的ol标签下,每一部电影都是一个li标签二、代码因为我这里主要练习xpath语法,故选择xpath提取有用信息impor...原创 2019-12-21 17:22:15 · 1321 阅读 · 0 评论 -
【python】爬取正在上映的豆瓣电影信息(etree、xpath)
爬取豆瓣几乎成了每个学爬虫的都想要尝试的习惯。不过不要频繁访问,以免给人家的服务器带来太大负担一、分析页面打开豆瓣电影的网站,找到正在上映的电影,我这里选择的是太原地区的。按一下F12审查元素,发现电影信息在一个class=lists的ul标签下,然后每一个li表示一部电影,大部分电影信息都能在此li标签的属性中获取到,海报以及详情链接还需要在往下的ul/li/a标签下二、代码代码很简单...原创 2019-12-21 15:24:04 · 1949 阅读 · 0 评论