删除换行符 正则 爬虫_爬虫之路第50天,终于在这条路上,看到了希望

用了两天时间,学习了 bs4 和 正则表达式,今天回到 spider.py 主程序。

之前程序已经可以爬取十个网页了。

9c9673f83180ea92481e8dcd9232f313.png

下面,就该进行网页解析工作了。

首先当然是声明要用的解析器是 html.parser。

然后,使用 for 循环,查找符合要求的字符串,形成列表。

通过在网页按 f12 ,用指针分析每一个信息,找到共性可以发现,实际上我们要找的就是每一个 class=”item” 信息。

这里 class 由于是个类别,所以要加下划线。

打印一下看看输出结果。

90440a804d8e28e0feab01cd342ea4a5.png

跟网页的源码进行对比,可以发现top250第一页中,符合要求的信息都已经被提取了。

所以,如何想提取更具体的信息怎么办?

依然按照上面的思路,找到相应标签内容,制定规则进行提取就好了。

下一步,就是把一个电影中的重要信息,一条条存起来。

这就需要提取每部电影的链接。

先使用正则表达式定义一个变量,需要把<a href=”网址”>表示出来。

这里的括号先输入一个 r ,就是忽视所有特殊符号的意思。

考虑到里面会使用双引号,所以最外面使用的是单引号。

最后得出: findLink = re.compile(r'<a href="(.*?)">')

在解析函数里,使用 re.findall 进行查找,直接就找出了25个链接,可以说是非常舒爽了。

000adef13c2d9e87ec954460e36395fe.png

这段实际上就是解析网页的核心内容。

接下来找电影名、图片链接、评分等的代码,本质上都是在重复这段内容。

ff15792bea0a979a46820a6b876b4fc3.png

这里加了一个 re.S 表示忽略可能出现的换行符,让换行符包含在字符中。

这样,就定义了影片所有信息的所有规则。

这一刻,我仿佛已经看到了希望。

爬虫之路,豁然开朗!

d684e94a7c4131c846b1520cfc51f7a9.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值