最近在写微博的爬虫,本来是想用 scrapy 的 xpath 提取内容,在 chrome 的 console 中试了下还正常,然而在代码中 xpath 却什么也提取不出来。
最终忽然发现 chrome 中的 elements 里面的内容和网页源码是不一样的。看了源码之后网页上的 html 竟然全都是 js 动态生成的,好二哦。
就像下面这样。
Element:
Source:
<script>FM.view({"ns":"pl.header.head.index","domid":"Pl_Official_Headerv6__1","css":[],"js":"page/js/pl/header/head/index.js?version=03f906edc4cbe84e","html":"<div class=\"PCD_header\">\r\n <div class=\"pf_wrap\" layout-shell=\"false\" node-type=\"cover_wrap\">\r\n <div class=\"cover_wrap\" node-type=\"cover\" style=\"background-
那么提取这种 html 有什么好的方法啊。 可怜我这种大过年还要写代码的大四狗。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.