学习爬虫首先要了解爬虫是什么,爬虫的工作原理。
经过简单的学习后,可以了解到爬虫,是以编程方式实现的,对网页信息进去爬取的脚本。实现的主要方式为使用模块(如urllib)获取网页对象,读取,使用解析模块(如re)解析对象。提取需要的信息存储到数据库。
了解到基本原理之后就是实操演练。
导入需要用到的模块
import re
import urllib.request
from urllib import request
url = '网址/' + chapter1 + '/' + chapter2 + '.html'
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.182 Safari/537.36'}
req = request.Request(url=url, headers=headers)
res = request.urlopen(req)
html = res.read().decode('gbk')
url为网站连接,chapter1和chapter2为拼接连接的参数。headers为浏览器请求头模拟,req构建请求对象,res获取请求对象,html读取请求对象,并以GBK的方式解码。
pattern1 = re.compile(' (.*?)<', re.S)
pattern2 = re.compile('<title>(.*?)</title>', re.S)
re_list = pattern1.findall(html)
sa = pattern2.findall(html)
num = len(re_list)
st.header(sa[0])
for i in range(num):
st.info(re_list[i])
patten1和patten2创建正则表达式对象。findall匹配获取。使用for循环打印解析完的对象并用streamlit显示。
效果如图(删除)。添加了数据库存储,使用streamlit布局按钮实现动态翻页。
吐槽:审核不通过真是绝了,,,,,
|