如何获取页面信息
有时需要爬取的网页,我们无法查看到其源码,页没办法看到其json,此时,是不是有点绝望?今天遇到一个爬虫网站,http://www.zjzfcg.gov.cn/innerUsed_noticeDetails/index.html?noticeId=3722029 页面有点类似于一个doc文档,一直想看页面源码和json,可是就是找不到啊。最后结果让我吃惊。所有的文档内容全部藏在一个带有标签的key中,只要认真查看json,就可以发现,可是我就是没有发现。最后问别人怎么发现的,直言,没什么诀窍,认真的分析获取到的json就知道了。看来认真细心真的很重要哇。
整体实现思维
- 先获取网页json数据
- 获取我们想要的字段值
- 使用go_remove_tag函数去除标签
具体代码实现
from w3lib.html import remove_tags
import re
def go_remove_tag(value):
# 移除标签
content = remove_tags(value)
# 移除空格 换行
return re.sub(r’[\t\r\n\s]’, ‘’, content)
url = ‘http://manager.zjzfcg.gov.cn/cms/api/cors/getRemoteResults?noticeId=3722029&url=http%3A%2F%2Fnotice.zcy.gov.cn%2Fnew%2FnoticeDetail’
r = requests.get(url,headers=headers,verify=False)
a = r.text
jsonstring = json.loads(a)
new_url = jsonstring[‘noticeContent’]
print(go_remove_tag(new_url))
获取到HTML后该怎么办,自己开始一直百度了很久,因为我的想法就是把HTML页面直接变成一个doc文档保存在本地,可是我的想法一开始就错了,估计加班加傻了。后来猛然大悟,一切so easy.