首页 > 技术文章 > python爬取动态页面

yuanxiaochou 2020-02-13 15:38 原文

有些你想爬取的页面数据并不在html里,而是由js动态加再出来,所以xpath不能提取出想要的数据,有些需要用到正则表达式,例如爬取丁香园疫情数据:

import requests
import re
import json

reault=requests.get('https://ncov.dxy.cn/ncovh5/view/pneumonia?scene=2&clicktime=1579583352&enterid=1579583352&from=timeline&isappinstalled=0')

url_text=reault.content.decode()
url_result=re.search(r'window.getAreaStat = (.*?)}]}catch',url_text,re.S)
texts=url_result.group()

texts=texts.replace('window.getAreaStat = ','')
texts=texts.replace('}catch','')
c=json.loads(texts)
print(c)

 

推荐阅读