前言

本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理。

PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取

python免费学习资料以及群交流解答点击即可加入

代码中已有不少注释,这里说下爬取过程中遇到的小问题。

1.soup的contents方法,返回的是某标签下的子节点列表,但刚开始总是取不到想要的值,输出其长度后,有些傻眼..TM什么情况?有这么多的子节点吗?较真的我又去数了几遍,最后发现,它竟然连"换行"都算作是子节点!莫名地有点方...不知各位有没有遇到过。

如图,我按列表下标标记,0,2,4,6,8是换行,但也被算作子节点...

2.还是contents方法,代码中的 '#得到电影所有名称' 处的代码 n.contents[1]获取的除了a标签外,还有其下的span标签,这是为何?它们算一个整体?

 

3.对如下图的电影信息处理时,出现了几处错误,原因有以下几点:

(1)部分电影没有主演信息...

(2)主演信息为这样'主演: ',就一个主演字样,无内容

(3)部分电影没有简介

(4)当主演信息中没有'...'时,获取主演信息受阻

 解决方案:(1)(2)都是主演问题,判断是否存在即可。(我以捕获异常处理)

(3)是简介问题,我无法给出具体哪部电影没有简介,但给了该电影所在的页面链接,可访问核查。(貌似有点笨)

(4)获取受阻是因为后面没有精确定位点,最后以re.split('[1-2]+')方法解决,匹配年份第一位作为分片点

本次分享就到这儿了,最后,照旧放几张结果图吧。

 

 


本文转载:CSDN博客