第一次博客-20180508

从网易财经爬取了一直股票5年的数据,数据整理分组中,运行好长时间,先来先点,报个道。

本人工作10年,近期心血来潮,想做个数据分析,然后从4月中旬开始python,《零基础学python》,在手机上啃了20多天,终于把基础的东西整完了,每天看一点,所有代码调试一遍,终于在昨天(2018-5-7)感觉可以试一试了,于是百度着爬了一个季度数据,到了晚上12点多,数据存下来之后就没进行处理。

今天晚上继续进行,先爬了5年的数据,没想好怎么处理,,想整理成嵌套list,结果电脑狂奔了好久,现在还在继续中。。。

第一次博客-20180508

就是这个股票,11列数据,,13年--17年的所有数据

第一次博客-20180508

等运行完了再继续贴码。

强行终止了,,爬的代码如下:

import requests
from bs4 import BeautifulSoup
import re
import time

def get_data(url):
    headers={'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64)\
     AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.139 Safari/537.36'}
    data=requests.get(url,headers=headers)
    return data.content
def save_data(path,str,pat='w'):
    f=open(path,pat)
    f.write(str)
    f.close()

def get_value(url,path):
    l=[]
    soup=BeautifulSoup(get_data(url),'lxml')
    table=soup.find_all('table',{'class','table_bg001 border_box limit_sale'})
    for tabb in table:
        tdd=tabb.find_all('td')
    m=re.findall(r'>(.*?)<',str(tdd),re.I|re.M)
    if m:
        for x in m:
            save_data(path,x,'a')



if __name__ == '__main__':
    sock = '002595'
    path = 'H:/data.txt'
    count=0
    for n in range(2013, 2018):
        for y in range(1, 5):
            url = 'http://quotes.money.163.com/trade/lsjysj_002595.html?year=' + str(n) + '&season=' + str(y)
            print(url)
            get_value(url, path)
            count+=1
            print('complete %d%%'%((count*100)/20))
            time.sleep(5)


可是对数据处理不知道怎么办了。。。

慢慢摸索一下吧,,有大神指导一下就好啦,暂时想整成list

import re
f=open('H:/data.txt','r')
s=f.read()
l=s.split(' ')
#patt1=re.compile(r'(\d*-\d*-\d*)')
#res1=re.findall(patt1,s)
#patt2=re.compile(r'\d*,\d*,\d*,\d*,\d*,\d*,\d*,\d*,\d*,\d*')
#res2=re.findall(patt2,s)

#print(res1)
#print(res2)
#print(l)
#for n in l:
#    print(n)
l1=[]
l2=[]
for i in range(int(len(l)/11)):
    for x in range(11):
        l2.append(l[11*i+x])
    l1.append(l2)
    print(l1)

想用csv模块,可是也得先把数据整理好啊