Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
P
Python-100-Days
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
huangkq
Python-100-Days
Commits
48344a71
Commit
48344a71
authored
May 28, 2018
by
jackfrued
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
更新了爬虫第2天文档
parent
2315b0ce
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
19 additions
and
4 deletions
+19
-4
02.数据采集和解析.md
Day66-75/02.数据采集和解析.md
+19
-4
No files found.
Day66-75/02.数据采集和解析.md
View file @
48344a71
...
...
@@ -53,21 +53,36 @@
2.
URL参数和请求头。
3.
复杂的POST请求(文件上传)。
4.
操作Cookie。
5.
设置代理服务器。
6.
超时设置。
### 三种采集方式
> 说明:关于requests的详细用法可以参考它的[官方文档](http://docs.python-requests.org/zh_CN/latest/user/quickstart.html)。
#### 三种采集方式的比较
### 四种采集方式
#### 四种采集方式的比较
| 抓取方法 | 速度 | 使用难度 | 备注 |
| ---------- | --------------------- | -------- | ------------------------------------------ |
| 正则表达式 | 快 | 困难 | 常用正则表达式
<br>
在线正则表达式测试 |
| lxml | 快 | 一般 | 需要安装C语言依赖库
<br>
唯一支持XML的解析器 |
| Beautiful | 快/慢(取决于解析器) | 简单 | |
| PyQuery | 较快 | 简单 | Python版的jQuery |
> 说明:Beautiful的解析器包括:Python标准库(html.parser)、lxml的HTML解析器、lxml的XML解析器和html5lib。
#### BeautifulSoup的使用
1.
遍历文档树。
2.
五种过滤器:字符串、正则表达式、列表、True、方法。
1.
遍历文档树
-
获取标签
-
获取标签属性
-
获取标签内容
-
获取子(孙)节点
-
获取父节点/祖先节点
-
获取兄弟节点
2.
搜索树节点
-
find / find_all:字符串、正则表达式、列表、True、函数或Lambda。
-
select_one / select:CSS选择器
> 说明:更多内容可以参考BeautifulSoup的[官方文档]()。
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment