Selector选择器组合使用

准备运行类

python网络爬虫需要注意什么(爬虫学习九之选择器组合和封装HttpClient练习)(1)

老样子,解析文件获取document对象

python网络爬虫需要注意什么(爬虫学习九之选择器组合和封装HttpClient练习)(2)

el#id: 元素 ID,比如: th#descinfo

python网络爬虫需要注意什么(爬虫学习九之选择器组合和封装HttpClient练习)(3)

代码及结果

python网络爬虫需要注意什么(爬虫学习九之选择器组合和封装HttpClient练习)(4)

el.class: 元素 class,比如: td. Clsc

python网络爬虫需要注意什么(爬虫学习九之选择器组合和封装HttpClient练习)(5)

代码及结果

python网络爬虫需要注意什么(爬虫学习九之选择器组合和封装HttpClient练习)(6)

el[attr]: 元素 class,比如: th[bgcolor]

python网络爬虫需要注意什么(爬虫学习九之选择器组合和封装HttpClient练习)(7)

代码及结果

python网络爬虫需要注意什么(爬虫学习九之选择器组合和封装HttpClient练习)(8)

任意组合,比如:th#descinfo. Clsa

python网络爬虫需要注意什么(爬虫学习九之选择器组合和封装HttpClient练习)(9)

代码及结果

python网络爬虫需要注意什么(爬虫学习九之选择器组合和封装HttpClient练习)(10)

ancestor child: 查找某个元素下子元素,比如:可以用. tra th 查找在class为tra下的所有 th元素

python网络爬虫需要注意什么(爬虫学习九之选择器组合和封装HttpClient练习)(11)

代码及结果

python网络爬虫需要注意什么(爬虫学习九之选择器组合和封装HttpClient练习)(12)

parent > child: 查找某个父元素下的直接子元素,比如

tr#tra > th

python网络爬虫需要注意什么(爬虫学习九之选择器组合和封装HttpClient练习)(13)

代码及结果

python网络爬虫需要注意什么(爬虫学习九之选择器组合和封装HttpClient练习)(14)

封装HttpClient

创建一个工具类

python网络爬虫需要注意什么(爬虫学习九之选择器组合和封装HttpClient练习)(15)

声明创建连接池管理器

python网络爬虫需要注意什么(爬虫学习九之选择器组合和封装HttpClient练习)(16)

配置连接数和每个主机的最大连接数

python网络爬虫需要注意什么(爬虫学习九之选择器组合和封装HttpClient练习)(17)

根据地址下载页面数据和图片名称

python网络爬虫需要注意什么(爬虫学习九之选择器组合和封装HttpClient练习)(18)

先来完成doGetHtml方法

1.首先获取HttpClient对象

2.创建HttpGet请求对象,设置Url地址

3.使用HttpClient发起请求,获取响应

4.解析响应,返回结果

获取HttpClient对象

python网络爬虫需要注意什么(爬虫学习九之选择器组合和封装HttpClient练习)(19)

创建HttpGet请求对象,设置Url地址

python网络爬虫需要注意什么(爬虫学习九之选择器组合和封装HttpClient练习)(20)

使用HttpClient发起请求,获取响应

python网络爬虫需要注意什么(爬虫学习九之选择器组合和封装HttpClient练习)(21)

解析响应,返回结果

python网络爬虫需要注意什么(爬虫学习九之选择器组合和封装HttpClient练习)(22)

创建一个获取请求配置信息的方法

python网络爬虫需要注意什么(爬虫学习九之选择器组合和封装HttpClient练习)(23)

在doGetHtml中配置请求信息

python网络爬虫需要注意什么(爬虫学习九之选择器组合和封装HttpClient练习)(24)

完成doGetImage方法,和doGetHtml类似,先将代码全部拷贝

python网络爬虫需要注意什么(爬虫学习九之选择器组合和封装HttpClient练习)(25)

修改的地方

python网络爬虫需要注意什么(爬虫学习九之选择器组合和封装HttpClient练习)(26)

步骤是

1. 获取图片后缀

2. 创建重命名图片

3. 下载图片

4. 返回图片名称

获取图片后缀

python网络爬虫需要注意什么(爬虫学习九之选择器组合和封装HttpClient练习)(27)

创建重命名图片

python网络爬虫需要注意什么(爬虫学习九之选择器组合和封装HttpClient练习)(28)

下载图片

python网络爬虫需要注意什么(爬虫学习九之选择器组合和封装HttpClient练习)(29)

返回图片名称

python网络爬虫需要注意什么(爬虫学习九之选择器组合和封装HttpClient练习)(30)

,