聚焦爬虫的设计思路:
1.确定url, 发起请求, 获取到响应
2.数据解析
3.数据持久化
requests模块发送get请求
# 导包
import requests
url = 'https://www.baidu.com'
# res就是我们拿到的响应数据
res = requests.get(url=url, params)
响应数据的获取方式
1.文本形式: res.text
2.json形式: res.json()
3.流形式: res.content
re模块解析数据
1.re.findall(r'正则表达式', 'str'): 结果以列表形式返回, 匹配整个字符串
2.re.search(r'正则表达式', 'str'): 匹配到第一个结果就返回, 返回的是一个对象, 使用group取值, 如果未匹配到, 返回None
3.re.match(r'正则表达式', 'str'): 从字符串的开头进行匹配, 返回一个对象, 使用group进行取值, 如果未匹配到, 返回None
数据持久化: mysql入库
# 导包
import pymysql
# 创建连接
conn = pymysql.connect(user, password, host, post, charset, database)
# 创建游标
cursor = conn.cursor()
# 构建SQL语句
sql = "insert into tname vaules ('%s', '%s', '%s')"%(title, link, comment)
# 执行SQL语句
try:
cursor.execute(sql)
# 提交事务
conn.commit()
except Exception as e:
print(e)
# 回滚
conn.rollback()