![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
python网络爬虫
他喵的等等我
这个作者很懒,什么都没留下…
展开
-
图形验证码识别技术
阻碍我们爬虫的有时候正是在登录或者请求一些数据时侯的图形验证码,因此这里我们讲解一种能将图片翻译成文字的技术。将图片翻译成文字一般被成为光学文字识别(Optical Character Recognition),简写为OCR。实现OCR的库不是很多,特别是开源的。因为这块存在一定的技术壁垒(需要大量的数据、算法、机器学习、深度学习知识等),并且如果做好了具有很高的商业价值。因此开源的比较少。这里介...原创 2019-12-10 16:38:28 · 246 阅读 · 0 评论 -
多线程下载百思不得姐段子
import requestsfrom lxml import etreeimport threadingfrom queue import Queueimport csv class BSSpider(threading.Thread): headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win...原创 2019-12-02 22:21:32 · 156 阅读 · 0 评论 -
GIL全局解释器所详解
原创 2019-12-02 20:58:28 · 128 阅读 · 0 评论 -
多线程下载表情包之异步爬虫
import requestsfrom lxml import etreeimport osfrom urllib import requestfrom queue import Queueimport threadingclass Producer(threading.Thread): headers = { 'User-Agent': 'Mozilla/...原创 2019-11-30 17:34:01 · 134 阅读 · 0 评论 -
多线程下载表情包之同步爬虫
import requestsfrom lxml import etreeimport osfrom urllib import requestimport redef parse_page(url): headers={ 'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/53...原创 2019-11-30 16:41:58 · 102 阅读 · 0 评论 -
糗事百科爬虫
import requestsimport redef parse_url(url): headers={ 'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36'...原创 2019-11-28 22:24:21 · 157 阅读 · 0 评论 -
正则表达式值古诗文网爬虫
import requestsimport redef parse_url(url): headers={ 'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36'...原创 2019-11-28 21:14:37 · 170 阅读 · 0 评论 -
多线程爬虫
有些时候,比如下载图片,因为下载图片是一个耗时的操作。如果采用之前那种同步的方式下载。那效率肯会特别慢。这时候我们就可以考虑使用多线程的方式来下载图片。多线程介绍多线程是为了同步完成多项任务,通过提高资源使用效率来提高系统的效率。线程是在同一时间需要完成多项任务的时候实现的。最简单的比喻多线程就像火车的每一节车厢,而进程则是火车。车厢离开火车是无法跑动的,同理火车也可以有多节车厢。多线程...原创 2019-11-27 17:55:01 · 238 阅读 · 2 评论 -
csv文件处理
读取csv文件的两种方式:import csvwith open('stock.csv', 'r') as fp: #reader是一个迭代器 reader = csv.reader(fp) titles = next(reader) for x in reader: print(x)这样操作,以后获取数据的时候,就要通过下表来获取数据...原创 2019-11-26 17:39:31 · 132 阅读 · 0 评论 -
爬虫json文件处理
json文件处理:什么是jsonJSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式。它基于 ECMAScript (w3c制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。...原创 2019-11-25 20:48:00 · 282 阅读 · 0 评论 -
爬虫正则表达式
正则表达式和re模块什么是正则表达式通俗理解:按照一定的规则,从某个字符串中匹配出想要的数据。这个规则就是正则表达式。标准答案:https://baike.baidu.com/item/正则表达式/1700215?fr=aladdin一个段子:世界是分为两种人,一种是懂正则表达式的,一种是不懂正则表达式的。1.正则表达式的常用规则1.1 匹配某个字符串import...原创 2019-11-25 18:18:48 · 228 阅读 · 0 评论 -
python爬虫之bs4
1.BeautifulSoup4库和lxml一样,Beautiful Soup也是一个HTML/XML的解析器主要的功能也是解析和接收HTML/XML数据。lxml只会局部遍历,而BeautifulSoup是基于HTML DOM(Document Object Model)的,会载入整个文档,解析整个DOM树,因此时间和内存开销都会大很多,所以性能要低于lxml。BeautifulSo...原创 2019-11-22 20:33:18 · 167 阅读 · 0 评论 -
豆瓣电影基本信息爬虫
代码如下:import requestsfrom lxml import etree#将目标网站上的页面抓去下来headers = { 'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.97 Safari/...原创 2019-11-21 17:33:16 · 497 阅读 · 0 评论 -
python爬虫之lxml库
lxml库lxml是一个HTML/XML的解析器,主要的功能是解析和提取HTML/XML数据lxml和正则一样,也是用C语言实现的,是一款高性能的Python HTML/XML解析器,我们可以i利用之前学习的XPath语法,来快速的定位元素及节点信息。lxml python官方文档:http://lxml.de/index.html需要安装C语言库,可以使用pip安装:pip in...原创 2019-11-21 13:14:23 · 310 阅读 · 0 评论 -
python爬虫xpath
1 什么是XPathXPath(XML Path Language)是一门在XML和HTML文档中查找信息的语言,可用来在XML和HTML文档中对元素和属性进行遍历。2 XPath开发工具1.Chrome插件XPath Helper2.Firefox插件XPath Checker3 XPath语法3.1.选取节点:XPath使用路径表达式来选取XML文档中的节点或者节点...原创 2019-11-20 13:14:00 · 117 阅读 · 0 评论 -
requests库
1.requests库的基本使用1.1 安装利用pip可以非常方便的安装pip install requests1.2 发送get请求1.最简单的发送get请求就是通过request.get调用resp=requests.get("http://www.baidu.com")2.添加headers和查询参数如果想添加 headers,可以传入headers参数...原创 2019-11-17 17:34:35 · 112 阅读 · 0 评论 -
cookie
1.cookie原理和格式详解1.什么是cookie:在网站中,http请求是无状态的。也就是说即使第一次和服务器连接后并且登录成功后,第二次请求服务器依然不能知道当前请求是哪个用户,cookie的出现就是为了解决这个问题,第一次登录后服务器返回一些数据(cookie)给浏览器,然后浏览器保存在本地,当该用户发送第二次请求的时候,就会自动的把上次请求存储的cookie数据自动地携带给服务器...原创 2019-11-15 11:18:22 · 114 阅读 · 0 评论 -
ProxyHandler实现代理ip
很多网站会检测某一段时间某个ip的访问次数(通过流量统计,系统日志等),如果访问次数多的不像正常人,它会禁止这个ip的访问,所以我们可以设置一些代理服务器,每隔一段时间换一个代理,就算ip被禁止,依然可以换个ip继续爬取,urllib中通过ProxyHandler来设置使用代理服务器,下面代码说明如何使用自定义opener来使用代理:from urllib import request#没...原创 2019-11-14 14:17:22 · 197 阅读 · 0 评论 -
urllib库
urllib库是Python中一个最基本的网络请求库,可以模拟浏览器的行为,向指定的服务器发送一个请求,并可以保存服务器返回的数据。1.urlopen函数在python3的urllib库中,所有和网络请求相关的方法,都被集到urllib.request模块下面了,以下先来看下urlopen函数基本的使用。from urllib import requestres=request.u...原创 2019-11-13 21:07:00 · 72 阅读 · 0 评论 -
http协议和chrome抓包工具
1.爬虫的定义网络爬虫是模拟客户端发送网络请求,接收请求响应,一种按照一定的规则,自动抓取互联网信息的程序。只要是浏览器能做的事,理论上,爬虫都能够做。爬虫的流程:url--->发送数据,获取响应--->提取数据--->保存发送请求,获取响应--->提取url2.爬虫分类1.通用爬虫:通用爬虫是搜索引擎抓取系统(百度、谷歌等)的重要组成部分,主要是将...原创 2019-11-13 17:46:54 · 185 阅读 · 0 评论