上回说到了使用xpath提取页面的操作,但是会发现在使用的时候还是会出现或多或少的问题,要么是没有提取到,要么就是提出来的数据比较混乱。
解决提取数据混乱的问题----->使用正则提取
对于混乱数据提取最好的办法就是正则提取了,正则是一个比较高级的提取方法,正则的方法甚至可以出一本书,当然对于小白的我,无需知道的那么多,只要知道一点,就足以应对平时的应用。
可以看这位博主写的正则表达式
实际应用:https://www.wdzj.com/dangan/pp/gongshang/
'''/html/body/div[8]/div/div/div[1]/div[1]/div[2]/table//tr[1]/td[2]'''
获取公司名称,位于table标签内,于是使用xpath进行提取,在之前的xpath-hepler插件中显示的没有问题,就是该公司名称。但是当我爬取的时候结果带有td标签。
一、解决办法直接使用正则进行提取,
company_name=HTML.xpath("/html/body/div[8]/div/div/div[1]/div[1]/div[2]/table//tr[1]/td[2]")
re.search(r"(.*?)",company_name).group(1)
这只是其中的一种方式,正则还可以做很多xpath做不到的或者不好做的事,两者结合可以更好的提取出数据。
二、当然除了使用正则,也可以将数据存储到Excel中,使用分列一栏进行分列,也可以达到同样的效果。
版权声明:本文为weixin_44987290原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。