最近使用python 爬一些数据,anjuke的数据用了很久的时间,记录下
由于目前技术有限,在chrome中都找不到ajax 的post或get 的数据,一度一筹莫展,后来无意中发现了它的手机端web站,发现可以使用。
python 代码很简单,
1 import json 2 3 import requests 4 5 from lxml import etree 6 7 current_url = 'http://m.anjuke.com/qd/rentlistbypage/?from=anjuke_home&page={page}' 8 headers = { 9 'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.143 Safari/537.36'} 10 allinfo = [] 11 12 13 # 返回的是json 14 def getdata(url): 15 resouce = requests.get(url, headers=headers) 16 resouce.encoding = 'utf-8' 17 JsonResult = resouce.text 18 return JsonResult 19 20 21 if __name__ == '__main__': 22 f = open('Conker.txt', 'w') 23 for i in range(1, 10): 24 page = i 25 OBJ = getdata(current_url.format(page=page)) 26 Resolve_data = json.loads(OBJ) 27 DataResouce = Resolve_data["datas"] 28 Info=DataResouce["list_info"] 29 for cc in range(0,len(Info)): 30 31 32 33 f.write(Info[cc]["title"]+";"+"图片:"+Info[cc]["img"]) 34 f.write('\n') 35 36 37 f.close()
这里的问题是关于json解析的,网上找的问题,首先获取到的数据是
json对象,如果直接使用 会报错,
这里要使用json.load() 来加载以后才可以使用