之前用过一点点爬虫方面的技术,想系统得补一下基础,写给自己看的笔记
创建爬虫
• 通过网站域名获取 HTML 数据
• 根据目标信息解析数据
• 存储目标信息
• 如果有必要,移动到另一个网页重复这个过程
创建爬虫
初见
这书一开始用的是 urllib.request,我自己比较喜欢request,而且也慢慢都换成这个了吧应该,就结合beautifulsoup随便建立了一个爬虫,但是后来看了一下之后的目录有提到requests库的,就老老实实跟着书的流程走吧
1 | from urllib.request import urlopen |
其实就多了个lxml用来解析,别的一样,爬虫的最基本雏形
一些BS
1 | findAll(tag, attributes, recursive, text, limit, keywords) |
正则
查表
lambda
举个例子就好,就是表达式的值传给参数,用:隔开
1 | from urllib.request import urlopen |
注
之所以叫网络爬虫(Web crawler)是因为它们可以沿着网络爬行。它们的本质就是一种递
归方式。为了找到 URL 链接,它们必须首先获取网页内容,检查这个页面的内容,再寻
找另一个 URL,然后获取 URL 对应的网页内容,不断循环这一过程 —- 书中内容
开始采集
六度迭代
1 | from urllib.request import urlopen |
去重
1 | from urllib.request import urlopen |
网络地图
基础迭代
1 | # 内链外链 |
获取所有外链
1 | # 内链外链 |
如果有bug不要紧,因为没有科学上网
使用API
1 | 一般情况下,程序员可以用 HTTP 协议向 API 发起请求以获取某种信息,API 会用 XML |
还是比较头疼的,可能拿国内的API来做做例子
1 | 利用 HTTP 从网络服务获取信息有四种方式: |
JSON和XML的不同样式
1 | 比如下面的 XML 数据用了 98 个字符: |
不会科学上网真麻烦
JSON
一些小操作
1 | json.loads # 将字符串转化为字典 |
书上的例子现在看起来感觉很棒
1 | import json |
存储数据
1 | 如果你准备创建一个网站 |
根据文件的 URL 下载文件
这个例子是从网上把一个穿山甲下下来,哈哈
下载下来默认是和.py文件同目录
1 | from urllib.request import urlretrieve |
OS模块
1 | import os |
Python连接MySQL
本文链接: http://woaixiaoyuyu.github.io/2019/03/03/Python%E7%BD%91%E7%BB%9C%E6%95%B0%E6%8D%AE%E9%87%87%E9%9B%86-note/
版权声明: 本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。转载请注明出处!