❶ 如何用爬蟲抓取股市數據並生成分析報表
1. 關於數據採集
股票數據是一種標准化的結構數據,是可以通過API介面訪問的(不過一般要通過渠道,開放的API有一定的局限性)。也可以通過爬蟲軟體進行採集,但是爬蟲軟體採集數據不能保證實時性,根據數據量和採集周期,可能要延遲幾十秒到幾分鍾不等。我們總結了一套專業的爬蟲技術解決方案(Ruby + Sidekiq)。能夠很快實現這個採集,也可以後台可視化調度任務。
2. 關於展現
網路股票數據的展現,網頁端直接通過HTML5技術就已經足夠,如果對界面要求高一點,可以採用集成前端框架,如Bootstrap;如果針對移動端開發, 可以使用Ionic框架。
3. 關於觸發事件
如果是採用Ruby on Rails的開發框架的話,倒是很方便了,有如sidekiq, whenever這樣子的Gem直接實現任務管理和事件觸發。
❷ 做個虛擬炒股的網站,不知道實時股票數據從哪裡搞到,怎麼搞,從別網站抓取怎麼抓取
你可以與上海贏富網聯系申請介面,他們是代理行情數據的。
❸ 如何用python 爬蟲抓取金融數據
獲取數據是數據分析中必不可少的一部分,而網路爬蟲是是獲取數據的一個重要渠道之一。鑒於此,我拾起了Python這把利器,開啟了網路爬蟲之路。
本篇使用的版本為python3.5,意在抓取證券之星上當天所有A股數據。程序主要分為三個部分:網頁源碼的獲取、所需內容的提取、所得結果的整理。
一、網頁源碼的獲取
很多人喜歡用python爬蟲的原因之一就是它容易上手。只需以下幾行代碼既可抓取大部分網頁的源碼。
為了減少干擾,我先用正則表達式從整個頁面源碼中匹配出以上的主體部分,然後從主體部分中匹配出每隻股票的信息。代碼如下。
pattern=re.compile('<tbody[sS]*</tbody>')
body=re.findall(pattern,str(content)) #匹配<tbody和</tbody>之間的所有代碼pattern=re.compile('>(.*?)<')
stock_page=re.findall(pattern,body[0]) #匹配>和<之間的所有信息
其中compile方法為編譯匹配模式,findall方法用此匹配模式去匹配出所需信息,並以列表的方式返回。正則表達式的語法還挺多的,下面我只羅列所用到符號的含義。
語法 說明
. 匹配任意除換行符「 」外的字元
* 匹配前一個字元0次或無限次
? 匹配前一個字元0次或一次
s 空白字元:[<空格> fv]
S 非空白字元:[^s]
[...] 字元集,對應的位置可以是字元集中任意字元
(...) 被括起來的表達式將作為分組,裡面一般為我們所需提取的內容
正則表達式的語法挺多的,也許有大牛隻要一句正則表達式就可提取我想提取的內容。在提取股票主體部分代碼時發現有人用xpath表達式提取顯得更簡潔一些,看來頁面解析也有很長的一段路要走。
三、所得結果的整理
通過非貪婪模式(.*?)匹配>和<之間的所有數據,會匹配出一些空白字元出來,所以我們採用如下代碼把空白字元移除。
stock_last=stock_total[:] #stock_total:匹配出的股票數據for data in stock_total: #stock_last:整理後的股票數據
if data=='':
stock_last.remove('')
最後,我們可以列印幾列數據看下效果,代碼如下
print('代碼',' ','簡稱',' ',' ','最新價',' ','漲跌幅',' ','漲跌額',' ','5分鍾漲幅')for i in range(0,len(stock_last),13): #網頁總共有13列數據
print(stock_last[i],' ',stock_last[i+1],' ',' ',stock_last[i+2],' ',' ',stock_last[i+3],' ',' ',stock_last[i+4],' ',' ',stock_last[i+5])
❹ 怎樣從互聯網上採集股票數據
你可以從網上下載免費的股票軟體,如「大智慧」,「同花順」等。很方便,什麼數據都有。
❺ 如何快速取得股票交易歷史數據
示例:
最近二十天左右的每5分鍾數據
網頁鏈接
(參數:股票編號、分鍾間隔(5、15、30、60)、均值(5、10、15、20、25)、查詢個數點(最大值242))
返回數據格式:日期、開盤價、最高價、最低價、收盤價、成交量
❻ 怎麼抓取股票數據
那麼中國股市的數據有沒有呢?答案是肯定的,不過要按照下面的參數做些調整,下面提供全球證券交易所的資料。
上證股票是股票代碼後面加上.ss,深證股票是股票代碼後面加上.sz
例如:000001 = 000001.sz
深市數據鏈接:http://table.finance.yahoo.com/table.csv?s=000001.sz
上市數據鏈接:http://table.finance.yahoo.com/table.csv?s=600000.ss
上證綜指代碼:000001.ss,深證成指代碼:399001.SZ,滬深300代碼:000300.ss
下面就是世界股票交易所的網址和縮寫,要查找哪個股票交易所的數據,就按照上面的格式以此類推。
上海交易所=cn.finance.yahoo.com,.SS,Chinese,sl1d1t1c1ohgv
深圳交易所=cn.finance.yahoo.com,.SZ,Chinese,sl1d1t1c1ohgv
美國交易所=finance.yahoo.com,,United States,sl1d1t1c1ohgv
加拿大=ca.finance.yahoo.com,.TO,Toronto,sl1d1t1c1ohgv
紐西蘭=au.finance.yahoo.com,.NZ,sl1d1t1c1ohgv
新加坡=sg.finance.yahoo.com,.SI,Singapore,sl1d1t1c1ohgv
香港=hk.finance.yahoo.com,.HK,Hong Kong,sl1d1t1c1ohgv
台灣=tw.finance.yahoo.com,.TW,Taiwan,sl1d1t1c1ohgv
印度=in.finance.yahoo.com,.BO,Bombay,sl1d1t1c1ohgv
倫敦=uk.finance.yahoo.com,.L,London,sl1d1t1c1ohgv
澳洲=au.finance.yahoo.com,.AX,Sydney,sl1d1t1c1ohgv
巴西=br.finance.yahoo.com,.SA,Sao Paulo,sl1d1t1c1ohgv
瑞典=se.finance.yahoo.com,.ST,Stockholm,sl1d1t1c1ohgv
以上方法只能提供歷史數據,實時數據不能抓取,此方法由ArthurXF提供
❼ 一般的基金股票網站,他們後台的交易數據是怎麼抓取過來的呢做一個類似網站需要哪些數據源
可以用火車頭採集器、寫採集規則、採集過來對方數據。
❽ 如何獲取實時的股票數據
要跟供應商協商得到他的介面才能得到實時股票行情數據;
股票實時行情,可以通過兩個方法來進行查看:
第一種,在網路搜索頁面直接輸入股票代碼,如:000717,網路輸入後,即可在搜索結果中看到,其中分時,就是該股票在當天的實時走向。
第二種,通過炒股軟體,如東財,同花順等,在開啟後,直接輸入,股票代碼,如600854,點擊回車。進入的第一個頁面就是該股票在當天的實時行情。
同時在股票軟體的分時成交界面,可以查看到每一分鍾的成交價和手數。股票行情趨勢判斷必要時也需要結合分時成交界面的數據來進行判斷。
查看其它股票的行情也是一樣的道理,直接鍵入該股票的代碼就可以查看到該股票當天或某個時間段內的行情。當然,精準的行情走勢、趨勢,是需要結合多種指標來共同進行分析的。
❾ 如何從網上接收交易所發出的股市行情數據
隨便找個股票軟體,反編譯一下,看看數據介面怎麼搞的不就行了?