Rumah >pembangunan bahagian belakang >Tutorial Python >Tulis program Python untuk merangkak aliran dana sektor
Melalui contoh merangkak aliran modal saham individu di atas, anda seharusnya boleh belajar menulis kod rangkak anda sendiri. Sekarang satukan dan lakukan latihan kecil yang serupa. Anda perlu menulis program Python anda sendiri untuk merangkak aliran modal sektor dalam talian. URL yang dirangkak ialah http://data.eastmoney.com/bkzj/hy.html, dan antara muka paparan ditunjukkan dalam Rajah 1.
Rajah 1 Rajah 1 Plate Mengalir Laman Web
1, cari js
# coding=utf-8 import requests url=" http://push2.eastmoney.com/api/qt/clist/get?cb=jQuery112309073354919152763_ 1617455258436&fid=f62&po=1&pz=50&pn=1&np=1&fltt=2&invt=2&ut=b2884a393a59ad64002292a3 e90d46a5&fs=m%3A90+t%3A2&fields=f12%2Cf14%2Cf2%2Cf3%2Cf62%2Cf184%2Cf66%2Cf69%2Cf72%2 Cf75%2Cf78%2Cf81%2Cf84%2Cf87%2Cf204%2Cf205%2Cf124" r = requests.get(url)r.status_code memaparkan 200, menunjukkan bahawa status tindak balas adalah normal. r.text juga mempunyai data, menunjukkan bahawa merangkak data aliran modal berjaya, seperti yang ditunjukkan dalam Rajah 4. Rajah 4 status respons 3, bersihkan str ke dalam format standard JSON (1) Analisis data r.teks. Format dalamannya ialah JSON standard, tetapi dengan beberapa awalan tambahan di hadapan. Keluarkan awalan jQ dan gunakan fungsi split() untuk menyelesaikan operasi ini. Lihat kod berikut untuk butiran:
r_text=r.text.split("{}".format("jQuery112309073354919152763_1617455258436"))[1] r_textKeputusan berjalan ditunjukkan dalam Rajah 5. . Lihat kod berikut untuk butiran:
Keputusan berjalan ditunjukkan dalam Rajah 6.
r_text_qu=r_text.rstrip(';') r_text_json=json.loads(r_text_qu[1:-1])['data']['diff'] dfcf_code={"f12":"code","f2":"价格","f3":"涨幅","f14":"name","f62":"主净入√","f66":"超净入","f69":"超占比", "f72":"大净入","f75":"大占比","f78":"中净入","f81":"中占比","f84":"小净入","f87":"小占比","f124":"不知道","f184":"主占比√"} result_=pd.DataFrame(r_text_json).rename(columns=dfcf_code) result_["主净入√"]=round(result_["主净入√"]/100000000,2)#一亿,保留2位 result_=result_[result_["主净入√"]>0] result_["超净入"]=round(result_["超净入"]/100000000,2)#一亿,保留2位 result_["大净入"]=round(result_["大净入"]/100000000,2)#一亿,保留2位 result_["中净入"]=round(result_["中净入"]/100000000,2)#一亿,保留2位 result_["小净入"]=round(result_["小净入"]/100000000,2)#一亿,保留2位 result_
Data menggunakan fungsi to_csv() Simpannya secara setempat, seperti ditunjukkan dalam Rajah 7.
Melalui dua contoh fund crawling di atas, anda pasti telah memahami beberapa kaedah menggunakan crawler. Idea terasnya ialah: (1) Pilih kelebihan aliran modal saham individu (2) Dapatkan alamat laman web dan analisisnya (3) Gunakan perangkak untuk mengumpul data Dapatkan dan simpan data.Rajah 6 Penjimatan Data
Ringkasan
Data format JSON ialah salah satu daripada format data piawai yang digunakan oleh banyak tapak web format pertukaran yang sangat mudah dibaca dan ditulis, dan boleh meningkatkan kecekapan penghantaran rangkaian dengan berkesan. Perkara pertama yang perlu dirangkak ialah rentetan dalam format str Melalui pemprosesan dan pemprosesan data, ia ditukar kepada format JSON standard, dan kemudian ke dalam format Pandas.
Melalui analisis kes dan pertempuran sebenar, kita mesti belajar menulis kod kita sendiri untuk merangkak data kewangan dan mempunyai keupayaan untuk menukarnya kepada format standard JSON. Lengkapkan rangkak data harian dan kerja penyimpanan data untuk menyediakan sokongan data yang berkesan untuk ujian sejarah masa hadapan dan analisis sejarah data.
Sudah tentu, pembaca yang berkebolehan boleh menyimpan hasil dalam pangkalan data seperti MySQL, MongoDB, atau pangkalan data awan Mongo Atlas Penulis tidak akan menumpukan pada penjelasan di sini. Kami memberi tumpuan sepenuhnya kepada kajian pembelajaran dan strategi kuantitatif. Menggunakan format txt untuk menyimpan data boleh menyelesaikan sepenuhnya masalah penyimpanan data awal, dan data juga lengkap dan berkesan.
Atas ialah kandungan terperinci Tulis program Python untuk merangkak aliran dana sektor. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!