下面是用Python3写的可以抓取任意网页的代码,经过测试,马上可用。这里的示例抓取的是新浪实时股票数据。
#-*- coding: utf-8 -*-
任意网页下载器
Created on Wed Dec 21 15:08:43 2016
@author: stanleymao
"""
#coding=utf-8
#不要用url2,太麻烦了。用requests即可抓取网页!
import requests as rq
def geturl(url, filename):
res=rq.get(url) #抓取网页
if res.status_code != rq.codes.ok:
raise Exception("url open error!")
return ''
#写入本地文件,同名文件会被覆盖
f = open(filename, 'wb') # 必须写入二进制数据,而不是str,为了保护文本中的utf-8编码不被转换为GB3212!
for chunk in res.iter_content(100000):
f.write(chunk)
f.close
return res.text
if __name__=='__main__':
#配置下行的url和文件名,即可抓不同的url
text= geturl('http://hq.sinajs.cn/list=sh600000', 'test.html')
#text= geturl('http://www.sina.com.cn', 'test.html')
print(text) #打印
下面是结果,是个javascript赋值代码:
var hq_str_sh600000="浦发银行,16.260,16.280,16.320,16.370,16.250,16.300,16.340,12638809,206022869.000,66650,16.300,40959,16.290,45277,16.280,117616,16.270,187296,16.260,43400,16.340,112430,16.350,108500,16.360,115536,16.370,84210,16.380,2016-12-21,15:00:00,00";