建盏,东营有能做网站优化,2021年度关键词有哪些,网站公司备案通知文章目录 1. 分析页面内容数据格式2. 使用re.findall方法#xff0c;爬取新闻3. 使用re.search 方法#xff0c;爬取新闻 1. 分析页面内容数据格式 打开 https://36kr.com/ 按F12#xff08;或 在网页上右键 -- 检查#xff08;Inspect#xff09;#xff09; 找… 文章目录 1. 分析页面内容数据格式2. 使用re.findall方法爬取新闻3. 使用re.search 方法爬取新闻 1. 分析页面内容数据格式 打开 https://36kr.com/ 按F12或 在网页上右键 -- 检查Inspect 找到网页上的Network网络部分 鼠标点击网页页面按 Ctrl R 刷新网页页面可以看到 NetWork网络部分会刷新出很多的网络信息 在Name 列找到 36kr.com 条目右侧自动显示网页的相关内容Headers, Preview, Response … … 分析Response内容所需要关心的内容位于整个html页面的下面 2. 使用re.findall方法爬取新闻 要点从 之间的数据都是json数据。 json.loads会自动将false转为False, true转为True import re
import requests
import json# URL路径
url https://36kr.com/
response requests.get(url)
str1 response.content.decode()# 查找,使用正在表达式-取数组的第一个
result re.findall(scriptwindow.initialState(.*?)/script, str1)[0]# 先写入到本地再查看
with open(36kr.json, w, encodingutf-8) as f:f.write(result)# 加载json转换成python类型
json_result json.loads(result)
print(json_result)# pretty print the data: 其中 json.dumps() 对数据格式进行了美化
print(json.dumps(json_result, indent4))print(fdata.theme {json_result[theme]})
print(fdata.isSpider {json_result[isSpider]})for item in json_result[channel]:print(fname {item[name]}, fkey {item[key]} )
运行结果 3. 使用re.search 方法爬取新闻 要点从 之间的数据都是json数据。 json.loads会自动将false转为False, true转为True import re
import json
import requests# URL路径
url https://36kr.com/
html_doc requests.get(url).textdata re.search(rscriptwindow.initialState(.*?)/script, html_doc)
print(fdata {data})json_result json.loads(data.group(1))
print(fjson_data {json_result})# pretty print the data:
print(fjson_dump {json.dumps(json_result, indent4)})print(fdata.theme {json_result[theme]})
print(fdata.isSpider {json_result[isSpider]})for item in json_result[channel]:print(fname {item[name]}, fkey {item[key]} )
运行结果