Maison  >  Article  >  développement back-end  >  Écrivez un programme Python pour explorer les flux de fonds des secteurs

Écrivez un programme Python pour explorer les flux de fonds des secteurs

WBOY
WBOYavant
2023-04-13 10:07:021789parcourir

Écrivez un programme Python pour explorer les flux de fonds des secteurs

Grâce à l'exemple ci-dessus d'exploration du flux de capitaux d'actions individuelles, vous devriez pouvoir apprendre à écrire votre propre code d'exploration. Maintenant, consolidez-le et faites un petit exercice similaire. Vous devez écrire votre propre programme Python pour analyser les flux de capitaux des secteurs en ligne. L'URL analysée est http://data.eastmoney.com/bkzj/hy.html et l'interface d'affichage est illustrée dans la figure 1.金 Figure 1 L'interface du site Web de flux de fonds

1, recherchez JSÉcrivez un programme Python pour explorer les flux de fonds des secteurs

Appuyez directement sur la touche F12, ouvrez la page Web correspondant aux outils de développement et de mise en service et recherchez les données correspondant aux données, comme le montre la figure 2.

Figure 2 Recherchez la page web correspondant à JS

Saisissez ensuite l'URL dans le navigateur, l'URL est relativement longue. Écrivez un programme Python pour explorer les flux de fonds des secteurs

http://push2.eastmoney.com/api/qt/clist/get?cb=jQuery112309073354919152763_1617455258434&pn=1&pz=500&po=1&np=1&fields=f12%2Cf13%2Cf14%2Cf62&fid =f62 &fs=m%3A90%2Bt%3A2&ut= b2884a393a59ad64002292a3e90d46a5&_=1617455258435

À ce stade, vous recevrez des commentaires du site Web, comme le montre la figure 3.

Figure 3 Obtention des sections et des flux de fonds à partir du site Web

Le contenu correspondant à cette URL est le contenu que nous souhaitons explorer. Écrivez un programme Python pour explorer les flux de fonds des secteurs

2, demande de demande et état de réponse de réponse

Écrivez le code du robot, voir le code suivant pour plus de détails :

# 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 affiche 200, indiquant que l'état de réponse est normal. r.text contient également des données indiquant que l'exploration des données sur les flux de capitaux a réussi, comme le montre la figure 4.

Statut de réponse de la figure 4

3, nettoyez str au format standard JSON Écrivez un programme Python pour explorer les flux de fonds des secteurs

(1) Analysez les données r.text. Son format interne est JSON standard, mais avec quelques préfixes supplémentaires devant. Supprimez le préfixe jQ et utilisez la fonction split() pour terminer cette opération. Voir le code suivant pour plus de détails :

r_text=r.text.split("{}".format("jQuery112309073354919152763_1617455258436"))[1]
r_text

Les résultats d'exécution sont présentés dans la figure 5.的 Figure 5 Supprimez les résultats d'exécution du préfixe

(2) Triez les données JSON. Voir le code suivant pour plus de détails :

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_

Les résultats d'exécution sont présentés dans la figure 6.

Écrivez un programme Python pour explorer les flux de fonds des secteurs

                                                                                                                                                                  .

À travers les deux exemples d'exploration de fonds ci-dessus, vous devez avoir compris certaines des méthodes d'utilisation des robots d'exploration. L'idée principale est la suivante :

(1) Sélectionnez les avantages des flux de capitaux individuels ;

(2) Obtenez l'adresse du site Web et analysez-la

Écrivez un programme Python pour explorer les flux de fonds des secteurs (3) Utilisez des robots d'exploration pour obtenir des données et les enregistrer.

Figure 6 Sauvegarde des données

Résumé

Les données au format JSON sont l'un des formats de données standardisés utilisés par de nombreux sites Web. Il s'agit d'un format d'échange de données léger, très facile à lire et à écrire, et qui peut améliorer efficacement le réseau. efficacité des transmissions. La première chose à explorer est la chaîne au format str Grâce au traitement et au traitement des données, elle est transformée au format JSON standard, puis au format Pandas.

Grâce à l'analyse de cas et au combat réel, nous devons apprendre à écrire notre propre code pour explorer les données financières et avoir la capacité de les convertir au format standard JSON. Effectuer le travail quotidien d'exploration et de stockage des données pour fournir un support de données efficace pour les futurs tests historiques et l'analyse historique des données.

Bien entendu, les lecteurs avertis peuvent sauvegarder les résultats dans des bases de données telles que MySQL, MongoDB ou même la base de données cloud Mongo Atlas. L'auteur ne se concentrera pas sur l'explication ici. Nous nous concentrons entièrement sur l’étude de l’apprentissage quantitatif et de la stratégie. L'utilisation du format txt pour enregistrer les données peut résoudre complètement le problème du stockage précoce des données, et les données sont également complètes et efficaces.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer