1.获取表数据
r=requests.post('http://bigdata.yunsx.com/Type/GetTableData/60EDD9CB06E5AC23/F2247D3558E22836')
2.用二进制保存爬取的内容
with open('D:/2.html','wb') as f:
f.write(r.content)
3.
window.Filter = [{"join":"AND","lb":"","field":"Id","op":"=","value":"000002","rb":""}]
4、模拟查询按钮查询数据(返回的是json数据)。注意:导出的按钮其实根本不会查询数据,只是把之前查询按钮找到的数据导出而已。
- r = requests.post('http://bigdata.yunsx.com/Type/GetTableData/60EDD9CB06E5AC23/F2247D3558E22836',data='pagesize=15&pageindex=1&filter[0][join]=AND&filter[0][lb]=&filter[0][field]=Id&filter[0][op]=%3D&filter[0][value]=11111&filter[0][rb]=')
- with open('D:/2.html','wb') as f:
- f.write(r.content)
- print(r.text)
- {"IsOk":true,"msg":"查询成功!","SearchDictionary":{"":""},"TypeBean":{"ID":"1126","ReID":"1113","TopID":"1108","Level":3,"Isparent":false,"Isshowed":false,"Sortrank":50,"Typename":"资产负债表","Typetablename":"zcfzb","Typetableexcelvpatch":"D:\\git\\PracticeFactory-Net\\src\\Web.OSS\\UploadFiles\\Images\\d7b0adbd-040f-4801-b883-bc674a88f06a.xlsx","Isexeclimportstated":true,"Contenthtml":"","Createtime":"0001-01-01T00:00:00","CreateuserID":"0","Isdeleted":false},"Items":[["1","深发展A","银行业","深圳发展银行股份有限公司","000001","2017-01-01","A","","","","","311258000000","166882000000","93787000000","97450000000","57179000000","8730000000","","","41
5、保存查询条件的方法,不是爬取的,爬取出来的json数据还要做进一步处理,不想搞,所以就用下面这种办法了(查看原网页的js代码研究出来的方法,因为网页的过滤器其实是在window.Filter这个变量中存储着的)
1)正常查询结果
2)打开浏览器的控制台,输入指令 console.log(JSON.stringify(window.Filter)) 或直接 JSON.stringify(window.Filter) 即可查询到过滤器
3)修改过滤器后,再修改window.Filter的值即可。如在控制台输入
window.Filter = [{"join":"AND","lb":"","field":"E","op":"=","value":"2017-12-31","rb":""},{"join":"OR","lb":"","field":"E","op":"=","value":"2017-9-30","rb":""}]
然后再点网上上的查询按钮即可看到过滤器已经改变了。