【Python3网络爬虫开发实战(一)】教程文章相关的互联网学习教程文章

[Python3网络爬虫开发实战] 1.7.1-Charles的安装【图】

Charles是一个网络抓包工具,相比Fiddler,其功能更为强大,而且跨平台支持得更好,所以这里选用它来作为主要的移动端抓包工具。1. 相关链接官方网站:https://www.charlesproxy.com下载链接:https://www.charlesproxy.com/download2. 下载Charles我们可以在官网下载最新的稳定版本,如图1-43所示。可以发现,它支持Windows、Linux和Mac三大平台。图1-43 Charles下载页面直接点击对应的安装包下载即可,具体的安装过程这里不再赘述...

《python3网络爬虫开发实战》--Ajax数据爬取

1. ajax异步的 JavaScript和 XML。对于传统的网页,如果想更新其内容,那么必须要刷新整个页面,但有了 Ajax,便可以在页面不被全部刷新的情况下更新其内容。 在这个过程中,页面实际上是在后台与服务器进行了数据交互,获 取到数据之后,再利用 JavaScript改变网页,这样网页内容就会更新了。2. Ajax请求网页更新: 发送请求 解析内容 渲染网页3. Ajax分析方法:查看请求过滤请求4. Ajax结果提取:分析请求分析响应 原文:https:...

[Python3网络爬虫开发实战] 1.2.6-aiohttp的安装

之前介绍的Requests库是一个阻塞式HTTP请求库,当我们发出一个请求后,程序会一直等待服务器响应,直到得到响应后,程序才会进行下一步处理。其实,这个过程比较耗费资源。如果程序可以在这个等待过程中做一些其他的事情,如进行请求的调度、响应的处理等,那么爬取效率一定会大大提高。aiohttp就是这样一个提供异步Web服务的库,从Python 3.5版本开始,Python中加入了async/await关键字,使得回调的写法更加直观和人性化。aiohttp...

Python3网络爬虫开发实战(一)【代码】【图】

1.开发环境配置 1.1Python3的安装 在写博客之前,楼主使用的是目前为止最新版本的Python 3.9.1。但由于在安装tesserocr时,没有对应版本的wheel文件。因此,将Python的版本降到了3.7.9。具体的影响因为刚开始学习暂时未知,先用3.7.9的版本。 官方网站:http://python.org下载地址:https://www.python.org/downloads 1.2请求库的安装 爬虫可以简单的分为几步:抓取页面、分析页面、存储数据。在抓取页面的过程中,需要模拟浏览器向...

【Python3网络爬虫开发实战】6.4-分析Ajax爬取今日头条街拍美图【华为云技术分享】【代码】【图】

【摘要】 本节中,我们以今日头条为例来尝试通过分析Ajax请求来抓取网页数据的方法。这次要抓取的目标是今日头条的街拍美图,抓取完成之后,将每组图片分文件夹下载到本地并保存下来。1. 准备工作 在本节开始之前,请确保已经安装好requests库。如果没有安装,可以参考第1章。 2. 抓取分析 在抓取之前,首先要分析抓取的逻辑。打开今日头条的首页http://www.toutiao.com/,如图6-15所示。图6-15 首页内容 右上角有一个搜索入口,这...

【Python3网络爬虫开发实战】 3.1.3-解析链接

【摘要】前面说过,urllib库里还提供了parse这个模块,它定义了处理URL的标准接口,例如实现URL各部分的抽取、合并以及链接转换。它支持如下协议的URL处理:file、ftp、gopher、hdl、http、https、imap、mailto、 mms、news、nntp、prospero、rsync、rtsp、rtspu、sftp、 sip、sips、snews、svn、svn+ssh、telnet和wais。本节中,我们介绍一下该模块中常用的方法来看一下它的便捷之处。 1. urlparse() 该方法可以实现URL的识别和分...

【Python3网络爬虫开发实战】 3.2-使用requests

【摘要】 为了更加方便地实现这些操作,就有了更为强大的库requests,有了它,Cookies、登录验证、代理设置等操作都不是事儿。 上一节中,我们了解了urllib的基本用法,但是其中确实有不方便的地方,比如处理网页验证和Cookies时,需要写Opener和Handler来处理。为了更加方便地实现这些操作,就有了更为强大的库requests,有了它,Cookies、登录验证、代理设置等操作都不是事儿。 接下来,让我们领略一下它的强大之处吧。 【快速入...

【Python3网络爬虫开发实战】3.1.1-发送请求【图】

【摘要】使用urllib的request模块,我们可以方便地实现请求的发送并得到响应,本节就来看下它的具体用法。 1. urlopen() urllib.request模块提供了最基本的构造HTTP请求的方法,利用它可以模拟浏览器的一个请求发起过程,同时它还带有处理授权验证(authenticaton)、重定向(redirection)、浏览器Cookies以及其他内容。 下面我们来看一下它的强大之处。这里以Python官网为例,我们来把这个网页抓下来:import urllib.request resp...

【Python3网络爬虫开发实战】3.1.2-处理异常

【摘要】 前一节我们了解了请求的发送过程,但是在网络不好的情况下,如果出现了异常,该怎么办呢?这时如果不处理这些异常,程序很可能因报错而终止运行,所以异常处理还是十分有必要的。 urllib的error模块定义了由request模块产生的异常。如果出现了问题,request模块便会抛出error模块中定义的异常。 1. URLError URLError类来自urllib库的error模块,它继承自OSError类,是error异常模块的基类,由request模块生的异常都可以通...

《python3网络爬虫开发实战》--模拟登陆

1.cookies池的搭建Cookies池需要有自动生成 Cookies、定时检测 Cookies、提供随机 Cookies等几大核心功能。Cookies 池架构的基本模块分为 4 块:存储模块 、 生成模块、检测模块和接口模块 。 每个模块的 功能如下 。存储模块负责存储每个账号的用户名密码以及每个账号对应的 Cookies 信息,同时还需要提供一些方法来实现方便的存取操作 。 生成模块负责生成新的 Cookies。 此模块会从存储模块逐个拿取账号的用户名和密码, 然后模拟...

《python3网络爬虫开发实战》--数据存储【代码】【图】

1. TXT文本 1 import requests2 from pyquery import PyQuery as pq3 4 url = http://www.zhihu.com/explore5 headers = {6 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) 7 Chrome/69.0.3497.100 Safari/537.368 }9 html = requests.get(url, headers=headers).text 10 doc = pq(html) 11 items = doc(.explore-tab .feed-item).items() 12 for it...

《python3网络爬虫开发实战》--基本库的使用【代码】

1. urllib:request:它是最基本的 HTTP 请求模块,可以用来模拟发送请求 。 就像在浏览器里输入网挝 然后回车一样,只需要给库方法传入 URL 以及额外的参数,就可以模拟实现这个过程了 。 error: parse:一个工具模块,提供了许多 URL处理方法,比如拆分、解析 、 合并等。 robotparser:主要是用来识别网站的 robots.txt文件,然后判断哪些网站可以爬,哪些网站不可以爬,它其实用得 比较少 。2. Handle类: 当需要实现高级的功能...

《Python3网络爬虫开发实战》-安装mongodb【代码】【图】

一、MongoDB 下载 官网下载地址MongoDB for Windows 64-bit 适合 64 位的 Windows Server 2008 R2, Windows 7 , 及最新版本的 Window 系统。自定义安装创建数据目录MongoDB将数据目录存储在 db 目录下。但是这个数据目录不会主动创建,我们在安装完成后需要创建它。请注意,数据目录应该放在根目录下((如: C: 或者 D: 等 )。 在本教程中,我们已经在 C 盘安装了 mongodb,现在让我们创建一个 data 的目录然后在 data 目录里创建 ...