四年前的文章了,现在才看见没通过。。。。当初明明过了的。。。
1.前些天打开网易新闻,于是点开爬取该新闻的评论。
2.以前爬取的网页都是静态的,都是源代码中直接就有,一眼就可以观察到的,而这次打开却不一样,根本没有自己想要的评论内容。然后通过搜索学习,知道了获取数据的办法。主要是html中的JavaScript和Python中json模块。
具体步骤如下:
python为什么叫爬虫,1.输入网址,用谷歌浏览器获取json数据
输入网址后,按F12,出现该界面
2.查找所需要的数据
观察加载的这些内容可以发现,有图片,有html文件等。一开始并不知道评论内容存在哪里,搜索html依次查看
点击Preview进行查看,发现红框里的内容才是需要的数据
爬虫爬取评价。3.点击headers获取url
这个url只有一个,加载的是“热门跟帖”的内容,而加载“最新跟帖”的到现在有17个
打开一个网址,是以json数据进行显示的
这里附了张图,应该不合法。。。。
其他的页面的显示形式也是相同的。
python爬虫app,4.写代码爬取数据,一开始只对一页内容进行爬取
一开始从来没有接触过json数据,不知道怎么爬取,开始的思路是想用BeautifulSoup模块,可是这是用js写的,于是就想用正则匹配将没用的全部替换掉,留下想要的内容。后来发现这是不可行的。然后便去了解json。
最后明白,获取的网页中json数据声明了一个变量,然后该变量用花括号将所有评论内容包含进去了。
思路转换为通过Python中字典的用法,用key进行取值,得到想要的内容。
json.dumps()方法可以将Python对象编码为json字符串(encoding)
python爬取动态网页?json.loads()方法可以将json格式的字符串解码为Python对象(decoding)
可以看这个关于Python处理json的文章:
http://liuzhijun.iteye.com/blog/1859857
http://www.cnblogs.com/coser/archive/2011/12/14/2287739.html
所以爬取第一页的代码为:#coding:utf-8
版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。
工作时间:8:00-18:00
客服电话
电子邮件
admin@qq.com
扫码二维码
获取最新动态