Python数据分析从入门到放弃(十五)爬虫(番外)基金选取实例
标签:
python基金爬虫js动态网页 |
分类: Python |
Python基金选取实例
目标:
选择多个周期内,同时出现在排名前列的基金
工具:
l
l
l
l
可能了解:
l
l
l
l
准备数据:
1、既然是挑选基金,我们选比较热的天天基金网为例,用Chrome打开,选择基金排行
http://s7/bmiddle/0025YMIgzy7hBikT8p036&690
2、右键->查看源代码,我们居然找不到基金数据
3、没事,F12—Network—F5,找到用时最长的那个
http://s8/bmiddle/0025YMIgzy7hBimxfRJ17&690
4、右键—Open in new tab,然后把链接贴出来,好长……
http://s12/bmiddle/0025YMIgzy7hBinZTaX8b&690
5、数据正是我们要的,这里有两个日期,是自定义数据的开始和结束日期,我们要用到,另外有意思的是,我们已经做好一页页爬数据的准备了,但是,这里有“&pi=1&pn=50&dx=”,实验得,改成5000都木有问题。
6、有了这些就可以写代码了……
准备包:
Pycharm为例,file-settings-project inspector—加需要的包,具体怎么换源啥的,自己搜,如果不是pycharm,自己pip install或者conda install,pandas,requests,lxml,这里会自动加一些必须的包
http://s1/bmiddle/0025YMIgzy7hBipaSukf0&690
代码部分:
1、引用包
|
1 |
import |
2、获得网页
这个函数利用requests来获取网页信息,返回字符串
|
1 |
def |
3、凑出URL
这里,我们利用字符串的replace方法,来替换url中需要动态处理的部分,包括自定义时间的开始和结尾,每页显示的基金数等。
|
1 |
def |
4、具体处理数据
这部分代码写的我并不满意,很不美观和优雅,有点凑的意思,但抱着实用主义的态度,我们就那么凑凑吧。最后返回一个Dataframe对象,并写入到相应的csv文件中。其实到了这里,已经可以直接用Excel打开这个csv分析了。
|
2 3 4 5 6 7 8 9 10 11 12 13 14 |
|
5、最后的处理
这里我们可以直接用刚才的函数获得数据,也可以用刚才函数保存的数据做基础来计算。读取数据后,我们先分别对数据用不同期限的列进行排序,然后赋值给相应的Dataframe,然后去做一个交集,Dataframe的交集用merge函数,具体参数不再罗列,也可以做并集的。最后我们打印结果保存数据,以备后查。
|
2 3 4 5 6 7 8 9 10 11 12 13 14 |
def
|
6、完整代码
|
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 |
import import import def #转换list维度,从1维到2维 def def |

加载中…