Python第二天(爬虫相关)

单行注释#

爬虫需要掌握的技术

1. python基础语法

2. HTML结构

3. 爬虫模块的使用

爬虫相关

安装requests
pip install requests
(手动安装File——Settings——Project Interpreter——+——install)

1.获取到网页的源代码 requests

代码示例
import requests
# 获取指定域名的源代码
response = requests.get('https://www.baidu.com')
# 响应状态码  200 ok 404 not found
print(response.status_code)
# 相应的编码方式
# 设置编码方式
response.encoding = 'utf-8'
print(response.status_code)
print(response.encoding)
# 获取 string类型的响应
html_data = response.text
print(html_data)
# 将 爬取的文件写成 本地 html
# 文件路径 读写模式 编码方式
with open('index.html','w',encoding='utf-8') as f:#爬网页源码
    if response2.status_code == 200:
        f.write(html_data)

图片的爬取

代码示例
import requests
# 图片地址
#F12——左上角选择元素——src以后的网址 =url
`
url = 'http://imgsrc.baidu.com/forum/pic/item/00eaa0ec08fa513d1a4e0fbe326d55fbb3fbd94b.jpg'
response2 = requests.get(url)
# 获取byte类型的响应
img_data = response2.content
# 文件路径 读写模式 编程方式
with open('tupian.png','wb') as f:  #爬网页图片
    if response2.status_code == 200:
        f.write(img_data)

2.然后提取我们要的信息 xpath

使用xpath语法提取本地html文件的内容
代码示例
# 安装lxml库
# pip install lxml
from lxml import html
读取本地的html文件

with open('路径','模式','编码') as f:
f.write('写入的内容')
f.read() # 读取模式

with open('index2.html','r',enconding='utf-8')as f:
#     f.write('写入的内容')
     html_data = f.read() # 读取模式
     print(html_data)

提取h1标题中的内容

selector = html.fromstring(html_data)
# 获取标签的内容需要在路径末尾增加/text()
# /代表根节点
h1 = selector.xpath('/html/boby/h1/text()')
print(h1)
语法形式

//标签1[@属性='属性值']/标签2[@属性='属性值']/.../text()
//从任意位置开始
获取a标签的内容

a = selector.xpath('//div[@id="container"]/a/text()')
print(a)
获取标签属性语法形式

//标签1[@属性='属性值']/标签2[@属性='属性值']/.../@属性名

link = selector.xpath('//div[@id="container"]/a/@href')
print(link)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容