如图所示: 所要提取的数据都在iframe标签里面的,直接用xpath提取iframe标签里的内容是提取不到的,
看到图一有一个script 所有的数据都在这个js标签内的,展开script标签后会看到一堆js代码,一直往下找会发现一个bytes类型的数据,如图
这个红色的源码就是你要的数据,但是他是一个bytes类型的,提取出来之后需要你转一下格式,这里推荐使用
import urllib.parse
urllib.parse.unquote(bytes源码)
提取规则:
//*[@id='对应的标签名字']//script//text()
html_str = response.xpath("//*[@id='对应的标签名字']//script//text()")
提取过的数据再用正则提取出你要的数据
html_byte = re.findall(r"iframeContent =(.*?);",html_str ,re.DOTALL)
re.DOTALL 提取允许换行
通过转换一下格式,你就得到一个标准的html格式的代码,转换过后的源码太多,这里只粘贴自己要提取的部分
看到这样的页面,直接用各种提取方式提取你想要的数据即可
源码不贴上了 每一个的业务不同,思路大致一样,
版权声明:本文为WBerica原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。