經過一段時間的python學習,能寫出一些爬蟲了。但是,遇到js動態加載的網頁就犯了難。於是乎谷歌、百度,發現個好介紹http://www.jianshu.com/p/4fe8bb1ea984
主要就是分析網頁的加載過程,從網頁響應中找到JS腳本返回的JSON數據。(上邊的網址介紹很詳細,下邊就直接貼代碼,記錄下)
1、今日頭條的
#coding:utf-8 import requests import json #今日頭條熱詞獲取,get方法 url = 'http://www.toutiao.com/c/hot_words/' wbdata = requests.get(url).text data = json.loads(wbdata) news = data['data'] for n in news: print(n)
2、拉勾網的 post方法
#coding:utf-8 import requests import json url = 'https://www.lagou.com/upload/ltm/oss.html?u=/zhaopin/Java/&q=332&n=333&d=1126&l=1238&dns=15&p=2770&pi=46&qn=1252&t=1501835145909' post_data = {'first':'true','kd':'Android','pn':'1'} wbdata = requests.post(url,data=post_data)
data = json.loads(wbdata) print data
ip被封,返回json數據未能解析,有待后續。
爬取動態頁面目前來說有兩種方法
- 分析頁面請求
- selenium模擬
