随笔分类 -  python爬虫学习

request、requests、selenium、scrapy爬虫框架的学习
摘要:本章动态网页爬虫的目标1.学会动态网页爬虫2.学会selenium库使用 什么是动态网页爬虫 1.动态网页 动态网页是网站在不重新加载的情况下,通过ajax技术动态更新网页中的局部数据。 2.AJAX(Asynchronous JavaScript And XML),即异步JavaScript和XM 阅读全文
posted @ 2021-04-27 22:00 马铃薯1 阅读(173) 评论(0) 推荐(0) 编辑
摘要:实战多线程下载王者荣耀高清壁纸1.网址:https://pvp.qq.com/web201605/wallpaper.shtml 2.查看网页源代码,发现腾讯将相关图片url信息转换成注释信息,猜测可能通过json动态添加,从Network找到存储高清壁纸文件(发现图片是用url编码的,需要用url 阅读全文
posted @ 2021-04-26 21:43 马铃薯1 阅读(198) 评论(0) 推荐(0) 编辑
摘要:Queue线程安全队列:在线程中,访问一些全局变量,加锁是一个经常的过程。如果你是想吧一些数据存储到某个队列中,那么python内置了一个线程安全的模块叫做queue模块。python中的queque模块中提供了同步的、线程安全的队列类,包括FIFO(先进先出)队列Queue,LIFO(后入先出)队 阅读全文
posted @ 2021-04-26 21:41 马铃薯1 阅读(197) 评论(0) 推荐(0) 编辑
摘要:多线程的GIL锁 python自带的解释器是CPython。 CPython解释器的多线程实际上是一个假的多线程(在多核CPU中,只能利用一核,不能利用多核)。即同一时刻只有一个线程在执行,为了保证同一时刻只有一个线程在执行,在CPython解释器中有一个东西叫做GIL(Global Intepre 阅读全文
posted @ 2021-04-26 20:50 马铃薯1 阅读(73) 评论(0) 推荐(0) 编辑
摘要:Conditon版的生产者和消费者模式:Lock版的生产者和消费者模式可以正常的运行。但是存在一个不足,在消费者中,总是通过while True死循环并且上锁的方式去判断gMoney钱够不够。上锁是一个很耗费CPU资源的行为,因此这种方式不是最好的。还有一种更好的方式便是使用threading.Co 阅读全文
posted @ 2021-04-26 20:29 马铃薯1 阅读(79) 评论(0) 推荐(0) 编辑
摘要:Lock版的生产者和消费者模式:生产者和消费者模式是多线程开发中经常见到的一种模式。生产者的线程专门用来生产一些数据,然后存放到一个中间变量中。消费者再从这个中间的变量中取出数据进行消费。通过生产者和消费者模式,可以让代码达到高内聚低耦合的目标,程序分工更加明确,线程更加方便管理 # 生产者和消费者 阅读全文
posted @ 2021-04-26 20:02 马铃薯1 阅读(65) 评论(0) 推荐(0) 编辑
摘要:多线程存在共享全局变量的问题: 多线程都是在同一个进程中运行的,因此在进程中的全局变量所有线程都是可共享的。 这就造成一个问题,因为线程执行的顺序时无序的,有可能会造成数据错误 以上结果正常的话,应该是10000000和20000000,但因为多线程运行的不确定性,因此最后的结果可能是随机的 扩展: 阅读全文
posted @ 2021-04-15 20:08 马铃薯1 阅读(258) 评论(0) 推荐(0) 编辑
摘要:什么是多线程: 默认情况下,一个程序只有一个进程和一个线程,代码是依次线性执行的。而多线程则可以并发执行,一次性多个人做多件事,自然比单线程更快 用threading模块写一个多线程程序:threading模块是python中专门提供用来做多线程编程的模块。threading模块中最常用的类是Thr 阅读全文
posted @ 2021-04-15 19:18 马铃薯1 阅读(199) 评论(0) 推荐(0) 编辑
摘要:MySQL数据库安装 安装教程:https://blog.csdn.net/bobo553443/article/details/81383194 下载那个版本视自己的操作系统和项目要求,不同版本区别不大,建议安装5.6.或者5.7.稳定版本(这里我用的版本是5.7.33.0) Navicat fo 阅读全文
posted @ 2021-04-15 16:15 马铃薯1 阅读(131) 评论(0) 推荐(0) 编辑
摘要:四种数据存储部分:1.JSON文件格式处理2.CSV文件格式处理3.Excel文件处理4.MySQL数据库处理 Excle处理:在爬虫开发中,我们主要关注Excel文件的读写,不会过多关心Excel中的一些样式。如果想要读写Excel文件,需要借助两个库xlrd 和xlwt,其中xlrd是用于读的, 阅读全文
posted @ 2021-03-09 20:35 马铃薯1 阅读(562) 评论(0) 推荐(0) 编辑
摘要:四种数据存储部分:1.JSON文件格式处理2.CSV文件格式处理3.Excel文件处理4.MySQL数据库处理 CSV模块: CSV(逗号分隔符)文件是表格与数据库操作之中最常用的输入输出格式。在RFC4180中的文件描述标准对CSV格式进行规范之前,CSV格式文件就已经被应用了很多年了。 Pyth 阅读全文
posted @ 2021-03-09 18:59 马铃薯1 阅读(501) 评论(0) 推荐(0) 编辑
摘要:四种数据存储部分:1.JSON文件格式处理2.CSV文件格式处理3.Excel文件处理4.MySQL数据库处理 JSON字符串: JSON(JavaScript Object Notation,JS对象标记)是一种轻量级的数据交换格式。它基于ECMAScript(w3c制定的js规范)的一个子集,采 阅读全文
posted @ 2021-03-09 13:31 马铃薯1 阅读(491) 评论(0) 推荐(0) 编辑
摘要:什么是正则表达式: 通俗理解:按照一定的规则,从某个字符串中匹配出想要的数据。这个规则就是正则表达式 re模块是python自带的标准库,不需要安装,直接导入 import re 1.单字符匹配: 点(.):匹配任意的字符(除了'\n') \d:匹配任意的数字 \D:匹配任意的非数字 \s:匹配的是 阅读全文
posted @ 2021-03-06 12:56 马铃薯1 阅读(302) 评论(0) 推荐(1) 编辑
摘要:BeautifulSoup4库:和lxml一样,Beautiful Soup也是一个HTML/XML的解析器,主要的功能也是如何解析和提取HTML/XML数据。lxml只会局部遍历,而Beautiful Soup是基于HTML DOM(Document Object Model)的,会载入整个文档, 阅读全文
posted @ 2021-03-05 12:39 马铃薯1 阅读(562) 评论(0) 推荐(0) 编辑
摘要:什么是XPth?xpath(XML Path Language)是一门在XML和HTML文档中查找信息的语言,可用来在XML和HTML文档中对元素和属性进行遍历XPath开发工具:Chrome插件XPath Helper XPath节点在XPath中,有七种类型的节点:元素、属性、文本、命名空间、处 阅读全文
posted @ 2021-03-04 17:33 马铃薯1 阅读(592) 评论(0) 推荐(0) 编辑
摘要:requests库:Requests:让HTTP服务人类虽然python的标准库中urllib模块已经包含了平常我们使用的大多数功能,但是它的API使用起来让人感觉不太好,而Requests宣传是"HTTP for Humans",说明使用起来更简洁方便Requests是用python语言编写,基于 阅读全文
posted @ 2021-03-04 15:00 马铃薯1 阅读(225) 评论(0) 推荐(0) 编辑
摘要:urllib库urllib库是Python中最基本的网络请求库,可以模拟浏览器的行为,向指定的服务器发送一个请求,并可以保存服务器返回的数据注意:urllib是python自带的标准库,无需安装,直接可以用 一、基本函数详解 1.urlopen函数详解:创建一个表示远程url的类文件对象,然后像本地 阅读全文
posted @ 2021-03-03 23:02 马铃薯1 阅读(259) 评论(0) 推荐(0) 编辑
摘要:什么是网络爬虫: 通俗的理解,爬虫是一个模拟人类请求网站行为的程序。可以自动请求网页、并把数据抓取下来, 然后使用一定的规则提取有价值的数据 为什么要用python写爬虫: 语法优美、代码简洁、开发效率高、支持的模块多。相关的HTTP请求模块和HTML解析模块非常丰富。 还有Scrapy和Scarp 阅读全文
posted @ 2021-03-03 19:55 马铃薯1 阅读(76) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示