close
- 必買推薦 2017省電家電【3M】淨呼吸捲筒式靜電空氣濾網超值三入組(專業級1入+淨化級2入)不買後悔
- 超省錢 2017省電家電【Coway】綠淨力立式空氣清淨機 AP-1216L特價下殺
- 熱賣 2017省電家電【Day Plus】創風空氣清淨機(靜音、省電、淨化循環)只剩此檔!!
AUGI SPORTS|重機車靴|重機車靴推薦|重機專用車靴|重機防摔鞋|重機防摔鞋推薦|重機防摔鞋
AUGI SPORTS|augisports|racing boots|urban boots|motorcycle boots
今年我跟我弟弟決定了要把老家重新翻新一下,讓爸爸媽媽爺爺奶奶住得舒服一點
翻新時的期間,帶著家人們去逛逛家裡要買的新家具和家電,看著家人那種興奮的臉,就覺得很開心
雖然家裡有很多家具都有留著可以用,不過有很多家電都已經放了很久了,該換的還是要換掉啦
像現在家裡的電視還是那種箱型電視,冰箱也超老的,這些都要換掉
可是挑那種家電真的要好好挑,要省電又好用又省錢,老人家才喜歡
我跟 弟弟都在找哪裡賣的便宜,不過我發現網路上賣得很便宜, 而且又都是好貨
家裡翻修好後,家具換好後,家人們用了都非常開心,所以今天要來跟大家來分享一下,我今天在網路上買回來的【Cuisinart超值組】冷熱多功能調理機1TW贈麵包機(快速到貨)
其實很多人問為什麼網路上【Cuisinart超值組】冷熱多功能調理機1TW贈麵包機(快速到貨)價格比 市場便宜那麼多?是水貨嗎?還是二手的?
其實很多在網路上這麼便宜是因為沒有了實體店面的人事管銷了,所以可以這麼便宜
所以才能把成本壓低 ,而且很多知名購物商城加入會員以後會不定時送電子折價券,所以其實買到的價格很多時候都比標價便宜很多
如果在購物商城買的話,除了有詳細的介紹以外,更有保障!!而且速度也很快~
↓↓↓限量折扣的優惠按鈕↓↓↓
商品訊息功能:
注意:
贈品-麵包機數量有限,送完為止,如下單沒有顯示贈品,代表已送完,不另行通知,謝謝。
超省錢
【Cuisinart超值組】冷熱多功能調理機1TW贈麵包機(快速到貨)
討論,推薦,開箱,CP值,熱賣,團購,便宜,優惠,介紹,排行,精選,特價,周年慶,體驗,限時,家電用品,冰箱,電視,電鍋
↓↓↓現在馬上點擊購買↓↓↓
另外在推薦我平時會使用的平台可以比較價格找便宜~~
Python爬蟲實戰:股票數據定向爬蟲
【51CTO活動】8.26 帶你與清華大學、搜狗、京東大咖們一起探討基於算法的IT運維實踐
功能簡介
目標: 獲取上交所和深交所所有股票的名稱和交易信息。 輸出: 保存到文件中。 技術路線: requests bs4 re 語言:python3.5 說明
網站選擇原則: 股票信息靜態存在於html頁面中,非js代碼生成,沒有Robbts協議限制。 選取方法: 打開網頁,查看源代碼,搜索網頁的股票價格數據是否存在於源代碼中。 如打開新浪股票網址:鏈接描述(http://finance.sina.com.cn/realstock/company/sz000877/nc.shtml),如下圖所示:
上圖中左邊為網頁的界面,顯示瞭天山股份的股票價格是13.06。右邊為該網頁的源代碼,在源代碼中查詢13.06發現沒有找到。所以判斷該網頁的數據使用js生成的,不適合本項目。因此換一個網頁。
再打開百度股票的網址:鏈接描述(https://gupiao.baidu.com/stock/sz300023.html),如下圖所示:
從上圖中可以發現百度股票的數據是html代碼生成的,符合我們本項目的要求,所以在本項目中選擇百度股票的網址。
由於百度股票隻有單個股票的信息,所以還需要當前股票市場中所有股票的列表,在這裡我們選擇東方財富網,網址為:鏈接描述(http://quote.eastmoney.com/stocklist.html),界面如下圖所示:
原理分析
查看百度股票每隻股票的網址:https://gupiao.baidu.com/stock/sz300023.html,可以發現網址中有一個編號300023正好是這隻股票的編號,sz表示的深圳交易所。因此我們構造的程序結構如下:
步驟1: 從東方財富網獲取股票列表; 步驟2: 逐一獲取股票代碼,並增加到百度股票的鏈接中,最後對這些鏈接進行逐個的訪問獲得股票的信息; 步驟3: 將結果存儲到文件。 接著查看百度個股信息網頁的源代碼,發現每隻股票的信息在html代碼中的存儲方式如下:超值
因此,在我們存儲每隻股票的信息時,可以參考上圖中html代碼的存儲方式。每一個信息源對應一個信息值,即采用鍵值對的方式進行存儲。在python中鍵值對的方式可以用字典類型。因此,在本項目中,使用字典來存儲每隻股票的信息,然後再用字典把所有股票的信息記錄起來,最後將字典中的數據輸出到文件中。
代碼編寫
首先是獲得html網頁數據的程序,在這裡不多做介紹瞭,代碼如下:
#獲得html文本defgetHTMLText(url):try:r=requests.get(url)r.raise_for_status()r.encoding=r.apparent_encodingreturnr.textexcept:return 接下來是html代碼解析程序,在這裡首先需要解析的是東方財富網頁面:鏈接描述(http://quote.eastmoney.com/stocklist.html),我們打開其源代碼,如下圖所示:
由上圖可以看到,a標簽的href屬性中的網址鏈接裡面有每隻股票的對應的號碼,因此我們隻要把網址裡面對應股票的號碼解析出來即可。解析步驟如下:
第一步,獲得一個頁面:
html=getHTMLText(stockURL) 第二步,解析頁面,找到所有的a標簽:
soup=BeautifulSoup(html,'html.parser')a=soup.find_all('a') 第三步,對a標簽中的每一個進行遍歷來進行相關的處理。處理過程如下:
1.找到a標簽中的href屬性,並且判斷屬性中間的鏈接,把鏈接後面的數字取出來,在這裡可以使用正則表達式來進行匹配。由於深圳交易所的代碼以sz開頭,上海交易所的代碼以sh開頭,股票的數字有6位構成,所以正則表達式可以寫為[s][hz]d{6}。也就是說構造一個正則表達式,在鏈接中去尋找滿足這個正則表達式的字符串,並把它提取出來。代碼如下:
foriina:href=i.attrs['href']lst.append(re.findall(r [s][hz]d{6} ,href)[0]) 2.由於在html中有很多的a標簽,但是有些a標簽中沒有href屬性,因此上述程序在運行的時候出現異常,所有對上述的程序還要進行try except來對程序進行異常處理,代碼如下:
foriina:try:href=i.attrs['href']lst.append(re.findall(r [s][hz]d{6} ,href)[0])except:continue 從上面代碼可以看出,對於出現異常的情況我們使用瞭continue語句,直接讓其跳過,繼續執行下面的語句。通過上面的程序我們就可以把東方財富網上股票的代碼信息全部保存下來瞭。
將上述的代碼封裝成一個函數,對東方財富網頁面解析的完整代碼如下所示:
defgetStockList(lst,stockURL):html=getHTMLText(stockURL)soup=BeautifulSoup(html,'html.parser')a=soup.find_all('a')foriina:try:href=i.attrs['href']lst.append(re.findall(r [s][hz]d{6} ,href)[0])except:continue 接下來是獲得百度股票網鏈接描述(https://gupiao.baidu.com/stock/sz300023.html)單隻股票的信息。我們先查看該頁面的源代碼,如下圖所示:
股票的信息就存在上圖所示的html代碼中,因此我們需要對這段html代碼進行解析。過程如下:
1.百度股票網的網址為:https://gupiao.baidu.com/stock/
一隻股票信息的網址為:https://gupiao.baidu.com/stock/sz300023.html
所以隻要百度股票網的網址+每隻股票的代碼即可,而每隻股票的代碼我們已經有前面的程序getStockList從東方財富網解析出來瞭,因此對getStockList函數返回的列表進行遍歷即可,代碼如下:
forstockinlst:url=stockURL+stock+ .html 2.獲得網址後,就要訪問網頁獲得網頁的html代碼瞭,程序如下:
html=getHTMLText(url) 3.獲得瞭html代碼後就需要對html代碼進行解析,由上圖我們可以看到單個股票的信息存放在標簽為div,屬性為stock-bets的html代碼中,因此對其進行解析:
soup=BeautifulSoup(html,'html.parser')stockInfo=soup.find('div',attrs={'class':'stock-bets'}) 4.我們又發現股票名稱在bets-name標簽內,繼續解析,存入字典中:
infoDict={}name=stockInfo.find_all(attrs={'class':'bets-name'})[0]infoDict.update({'股票名稱':name.text.split()[0]}) split()的意思是股票名稱空格後面的部分不需要瞭。
5.我們從html代碼中還可以觀察到股票的其他信息存放在dt和dd標簽中,其中dt表示股票信息的鍵域,dd標簽是值域。獲取全部的鍵和值:
keyList=stockInfo.find_all('dt')valueList=stockInfo.find_all('dd') 並把獲得的鍵和值按鍵值對的方式村放入字典中:
foriinrange(len(keyList)):key=keyList[i].textval=valueList[i].textinfoDict[key]=val 6.最後把字典中的數據存入外部文件中:
withopen(fpath,'a',encoding='utf-8')asf:f.write(str(infoDict)+'
') 將上述過程封裝成完成的函數,代碼如下:
defgetStockInfo(lst,stockURL,fpath):forstockinlst:url=stockURL+stock+ .html html=getHTMLText(url)try:ifhtml== :continueinfoDict={}soup=BeautifulSoup(html,'html.parser')stockInfo=soup.find('div',attrs={'class':'stock-bets'})name=stockInfo.find_all(attrs={'class':'bets-name'})[0]infoDict.update({'股票名稱':name.text.split()[0]})keyList=stockInfo.find_all('dt')valueList=stockInfo.find_all('dd')foriinrange(len(keyList)):key=keyList[i].textval=valueList[i].textinfoDict[key]=valwithopen(fpath,'a',encoding='utf-8')asf:f.write(str(infoDict)+'
')except:continue 其中try except用於異常處理。
接下來編寫主函數,調用上述函數即可:
defmain():stock_list_url='http://quote.eastmoney.com/stocklist.html'stock_info_url='https://gupiao.baidu.com/stock/'output_file='D:/BaiduStockInfo.txt'slist=[]getStockList(slist,stock_list_url)getStockInfo(slist,stock_info_url,output_file) 項目完整程序
#-*-coding:utf-8-*-importrequestsfrombs4importBeautifulSoupimporttracebackimportredefgetHTMLText(url):try:r=requests.get(url)r.raise_for_status()r.encoding=r.apparent_encodingreturnr.textexcept:return defgetStockList(lst,stockURL):html=getHTMLText(stockURL)soup=BeautifulSoup(html,'html.parser')a=soup.find_all('a')foriina:try:href=i.attrs['href']lst.append(re.findall(r [s][hz]d{6} ,href)[0])except:continuedefgetStockInfo(lst,stockURL,fpath):count=0forstockinlst:url=stockURL+stock+ .html html=getHTMLText(url)try:ifhtml== :continueinfoDict={}soup=BeautifulSoup(html,'html.parser')stockInfo=soup.find('div',attrs={'class':'stock-bets'})name=stockInfo.find_all(attrs={'class':'bets-name'})[0]infoDict.update({'股票名稱':name.text.split()[0]})keyList=stockInfo.find_all('dt')valueList=stockInfo.find_all('dd')foriinrange(len(keyList)):key=keyList[i].textval=valueList[i].textinfoDict[key]=valwithopen(fpath,'a',encoding='utf-8')asf:f.write(str(infoDict)+'
')count=count+1print( 當前進度:{:.2f}% .format(count*100/len(lst)),end= )except:count=count+1print( 當前進度:{:.2f}% .format(count*100/len(lst)),end= )continuedefmain():stock_list_url='http://quote.eastmoney.com/stocklist.html'stock_info_url='https://gupiao.baidu.com/stock/'output_file='D:/BaiduStockInfo.txt'slist=[]getStockList(slist,stock_list_url)getStockInfo(slist,stock_info_url,output_file)main() 上述代碼中的print語句用於打印爬取的進度。執行完上述代碼後在D盤會出現BaiduStockInfo.txt文件,裡面存放瞭股票的信息。
點贊 0
每日頭條、業界資訊、熱點資訊、八卦爆料,全天跟蹤微博播報。各種爆料、內幕、花邊、資訊一網打盡。百萬互聯網粉絲互動參與,TechWeb官方微博期待您的關註。
↑掃描特價二維碼
想在手機上看科技資訊和科技八卦嗎?
想第一時間看獨傢爆料和深度報道嗎?
請關註TechWeb官方微信公眾帳號:
1.用手機掃左側二維碼;
2.在添加朋友裡,搜索關註TechWeb。
【Cuisinart超值組】冷熱多功能調理機1TW贈麵包機(快速到貨)怎麼買比較便宜?使用心得【Cuisinart超值組】冷熱多功能調理機1TW贈麵包機(快速到貨)推薦【Cuisinart超值組】冷熱多功能調理機1TW贈麵包機(快速到貨)開箱文#GOODS_NAME#心得分享【Cuisinart超值組】冷熱多功能調理機1TW贈麵包機(快速到貨)哪邊買必較便宜?【Cuisinart超值組】冷熱多功能調理機1TW贈麵包機(快速到貨)家電用品【Cuisinart超值組】冷熱多功能調理機1TW贈麵包機(快速到貨)電視冰箱【Cuisinart超值組】冷熱多功能調理機1TW贈麵包機(快速到貨)家電用品有哪些#GOODS_NAME#家電用品開箱 您或許有興趣的東西:
翻新時的期間,帶著家人們去逛逛家裡要買的新家具和家電,看著家人那種興奮的臉,就覺得很開心
雖然家裡有很多家具都有留著可以用,不過有很多家電都已經放了很久了,該換的還是要換掉啦
像現在家裡的電視還是那種箱型電視,冰箱也超老的,這些都要換掉
可是挑那種家電真的要好好挑,要省電又好用又省錢,老人家才喜歡
我跟 弟弟都在找哪裡賣的便宜,不過我發現網路上賣得很便宜, 而且又都是好貨
家裡翻修好後,家具換好後,家人們用了都非常開心,所以今天要來跟大家來分享一下,我今天在網路上買回來的【Cuisinart超值組】冷熱多功能調理機1TW贈麵包機(快速到貨)
其實很多人問為什麼網路上【Cuisinart超值組】冷熱多功能調理機1TW贈麵包機(快速到貨)價格比 市場便宜那麼多?是水貨嗎?還是二手的?
其實很多在網路上這麼便宜是因為沒有了實體店面的人事管銷了,所以可以這麼便宜
所以才能把成本壓低 ,而且很多知名購物商城加入會員以後會不定時送電子折價券,所以其實買到的價格很多時候都比標價便宜很多
如果在購物商城買的話,除了有詳細的介紹以外,更有保障!!而且速度也很快~
↓↓↓限量折扣的優惠按鈕↓↓↓
商品訊息功能:
- 品號:4582220
- 每分鐘可達22000轉速
- 知名Crisa玻璃壺身/附食譜
- 冰沙/果汁/三段溫控加熱
注意:
贈品-麵包機數量有限,送完為止,如下單沒有顯示贈品,代表已送完,不另行通知,謝謝。
超省錢
【Cuisinart超值組】冷熱多功能調理機1TW贈麵包機(快速到貨)
討論,推薦,開箱,CP值,熱賣,團購,便宜,優惠,介紹,排行,精選,特價,周年慶,體驗,限時,家電用品,冰箱,電視,電鍋
↓↓↓現在馬上點擊購買↓↓↓
另外在推薦我平時會使用的平台可以比較價格找便宜~~
寶貝用品購物網推薦 | ||
專門賣寶寶天然的清潔用品~~ | ||
MOTHER-K Taiwan | 韓國首選婦幼產品,既時尚又實用 | |
適合給新手爸媽的嬰兒購物網,一應俱全! | ||
各大購物網快速連結 | ||
東森購物網 | 性質大多相同 建議每一家搜尋要購買的品項後 比對出能折價卷能扣最多的一家來消費 保養品、化妝品我比較常在momo購物網買,切記是"購物網"才有正品保障!! | |
森森購物網 | ||
udn買東西 | ||
MOMO購物網 | ||
瘋狂麥克 | 有時候新鮮貨我都在瘋狂麥克找,基本上想找的,瘋狂賣客都會賣~ | |
Python爬蟲實戰:股票數據定向爬蟲
【51CTO活動】8.26 帶你與清華大學、搜狗、京東大咖們一起探討基於算法的IT運維實踐
功能簡介
目標: 獲取上交所和深交所所有股票的名稱和交易信息。 輸出: 保存到文件中。 技術路線: requests bs4 re 語言:python3.5 說明
網站選擇原則: 股票信息靜態存在於html頁面中,非js代碼生成,沒有Robbts協議限制。 選取方法: 打開網頁,查看源代碼,搜索網頁的股票價格數據是否存在於源代碼中。 如打開新浪股票網址:鏈接描述(http://finance.sina.com.cn/realstock/company/sz000877/nc.shtml),如下圖所示:
上圖中左邊為網頁的界面,顯示瞭天山股份的股票價格是13.06。右邊為該網頁的源代碼,在源代碼中查詢13.06發現沒有找到。所以判斷該網頁的數據使用js生成的,不適合本項目。因此換一個網頁。
再打開百度股票的網址:鏈接描述(https://gupiao.baidu.com/stock/sz300023.html),如下圖所示:
從上圖中可以發現百度股票的數據是html代碼生成的,符合我們本項目的要求,所以在本項目中選擇百度股票的網址。
由於百度股票隻有單個股票的信息,所以還需要當前股票市場中所有股票的列表,在這裡我們選擇東方財富網,網址為:鏈接描述(http://quote.eastmoney.com/stocklist.html),界面如下圖所示:
原理分析
查看百度股票每隻股票的網址:https://gupiao.baidu.com/stock/sz300023.html,可以發現網址中有一個編號300023正好是這隻股票的編號,sz表示的深圳交易所。因此我們構造的程序結構如下:
步驟1: 從東方財富網獲取股票列表; 步驟2: 逐一獲取股票代碼,並增加到百度股票的鏈接中,最後對這些鏈接進行逐個的訪問獲得股票的信息; 步驟3: 將結果存儲到文件。 接著查看百度個股信息網頁的源代碼,發現每隻股票的信息在html代碼中的存儲方式如下:超值
因此,在我們存儲每隻股票的信息時,可以參考上圖中html代碼的存儲方式。每一個信息源對應一個信息值,即采用鍵值對的方式進行存儲。在python中鍵值對的方式可以用字典類型。因此,在本項目中,使用字典來存儲每隻股票的信息,然後再用字典把所有股票的信息記錄起來,最後將字典中的數據輸出到文件中。
代碼編寫
首先是獲得html網頁數據的程序,在這裡不多做介紹瞭,代碼如下:
#獲得html文本defgetHTMLText(url):try:r=requests.get(url)r.raise_for_status()r.encoding=r.apparent_encodingreturnr.textexcept:return 接下來是html代碼解析程序,在這裡首先需要解析的是東方財富網頁面:鏈接描述(http://quote.eastmoney.com/stocklist.html),我們打開其源代碼,如下圖所示:
由上圖可以看到,a標簽的href屬性中的網址鏈接裡面有每隻股票的對應的號碼,因此我們隻要把網址裡面對應股票的號碼解析出來即可。解析步驟如下:
第一步,獲得一個頁面:
html=getHTMLText(stockURL) 第二步,解析頁面,找到所有的a標簽:
soup=BeautifulSoup(html,'html.parser')a=soup.find_all('a') 第三步,對a標簽中的每一個進行遍歷來進行相關的處理。處理過程如下:
1.找到a標簽中的href屬性,並且判斷屬性中間的鏈接,把鏈接後面的數字取出來,在這裡可以使用正則表達式來進行匹配。由於深圳交易所的代碼以sz開頭,上海交易所的代碼以sh開頭,股票的數字有6位構成,所以正則表達式可以寫為[s][hz]d{6}。也就是說構造一個正則表達式,在鏈接中去尋找滿足這個正則表達式的字符串,並把它提取出來。代碼如下:
foriina:href=i.attrs['href']lst.append(re.findall(r [s][hz]d{6} ,href)[0]) 2.由於在html中有很多的a標簽,但是有些a標簽中沒有href屬性,因此上述程序在運行的時候出現異常,所有對上述的程序還要進行try except來對程序進行異常處理,代碼如下:
foriina:try:href=i.attrs['href']lst.append(re.findall(r [s][hz]d{6} ,href)[0])except:continue 從上面代碼可以看出,對於出現異常的情況我們使用瞭continue語句,直接讓其跳過,繼續執行下面的語句。通過上面的程序我們就可以把東方財富網上股票的代碼信息全部保存下來瞭。
將上述的代碼封裝成一個函數,對東方財富網頁面解析的完整代碼如下所示:
defgetStockList(lst,stockURL):html=getHTMLText(stockURL)soup=BeautifulSoup(html,'html.parser')a=soup.find_all('a')foriina:try:href=i.attrs['href']lst.append(re.findall(r [s][hz]d{6} ,href)[0])except:continue 接下來是獲得百度股票網鏈接描述(https://gupiao.baidu.com/stock/sz300023.html)單隻股票的信息。我們先查看該頁面的源代碼,如下圖所示:
股票的信息就存在上圖所示的html代碼中,因此我們需要對這段html代碼進行解析。過程如下:
1.百度股票網的網址為:https://gupiao.baidu.com/stock/
一隻股票信息的網址為:https://gupiao.baidu.com/stock/sz300023.html
所以隻要百度股票網的網址+每隻股票的代碼即可,而每隻股票的代碼我們已經有前面的程序getStockList從東方財富網解析出來瞭,因此對getStockList函數返回的列表進行遍歷即可,代碼如下:
forstockinlst:url=stockURL+stock+ .html 2.獲得網址後,就要訪問網頁獲得網頁的html代碼瞭,程序如下:
html=getHTMLText(url) 3.獲得瞭html代碼後就需要對html代碼進行解析,由上圖我們可以看到單個股票的信息存放在標簽為div,屬性為stock-bets的html代碼中,因此對其進行解析:
soup=BeautifulSoup(html,'html.parser')stockInfo=soup.find('div',attrs={'class':'stock-bets'}) 4.我們又發現股票名稱在bets-name標簽內,繼續解析,存入字典中:
infoDict={}name=stockInfo.find_all(attrs={'class':'bets-name'})[0]infoDict.update({'股票名稱':name.text.split()[0]}) split()的意思是股票名稱空格後面的部分不需要瞭。
5.我們從html代碼中還可以觀察到股票的其他信息存放在dt和dd標簽中,其中dt表示股票信息的鍵域,dd標簽是值域。獲取全部的鍵和值:
keyList=stockInfo.find_all('dt')valueList=stockInfo.find_all('dd') 並把獲得的鍵和值按鍵值對的方式村放入字典中:
foriinrange(len(keyList)):key=keyList[i].textval=valueList[i].textinfoDict[key]=val 6.最後把字典中的數據存入外部文件中:
withopen(fpath,'a',encoding='utf-8')asf:f.write(str(infoDict)+'
') 將上述過程封裝成完成的函數,代碼如下:
defgetStockInfo(lst,stockURL,fpath):forstockinlst:url=stockURL+stock+ .html html=getHTMLText(url)try:ifhtml== :continueinfoDict={}soup=BeautifulSoup(html,'html.parser')stockInfo=soup.find('div',attrs={'class':'stock-bets'})name=stockInfo.find_all(attrs={'class':'bets-name'})[0]infoDict.update({'股票名稱':name.text.split()[0]})keyList=stockInfo.find_all('dt')valueList=stockInfo.find_all('dd')foriinrange(len(keyList)):key=keyList[i].textval=valueList[i].textinfoDict[key]=valwithopen(fpath,'a',encoding='utf-8')asf:f.write(str(infoDict)+'
')except:continue 其中try except用於異常處理。
接下來編寫主函數,調用上述函數即可:
defmain():stock_list_url='http://quote.eastmoney.com/stocklist.html'stock_info_url='https://gupiao.baidu.com/stock/'output_file='D:/BaiduStockInfo.txt'slist=[]getStockList(slist,stock_list_url)getStockInfo(slist,stock_info_url,output_file) 項目完整程序
#-*-coding:utf-8-*-importrequestsfrombs4importBeautifulSoupimporttracebackimportredefgetHTMLText(url):try:r=requests.get(url)r.raise_for_status()r.encoding=r.apparent_encodingreturnr.textexcept:return defgetStockList(lst,stockURL):html=getHTMLText(stockURL)soup=BeautifulSoup(html,'html.parser')a=soup.find_all('a')foriina:try:href=i.attrs['href']lst.append(re.findall(r [s][hz]d{6} ,href)[0])except:continuedefgetStockInfo(lst,stockURL,fpath):count=0forstockinlst:url=stockURL+stock+ .html html=getHTMLText(url)try:ifhtml== :continueinfoDict={}soup=BeautifulSoup(html,'html.parser')stockInfo=soup.find('div',attrs={'class':'stock-bets'})name=stockInfo.find_all(attrs={'class':'bets-name'})[0]infoDict.update({'股票名稱':name.text.split()[0]})keyList=stockInfo.find_all('dt')valueList=stockInfo.find_all('dd')foriinrange(len(keyList)):key=keyList[i].textval=valueList[i].textinfoDict[key]=valwithopen(fpath,'a',encoding='utf-8')asf:f.write(str(infoDict)+'
')count=count+1print( 當前進度:{:.2f}% .format(count*100/len(lst)),end= )except:count=count+1print( 當前進度:{:.2f}% .format(count*100/len(lst)),end= )continuedefmain():stock_list_url='http://quote.eastmoney.com/stocklist.html'stock_info_url='https://gupiao.baidu.com/stock/'output_file='D:/BaiduStockInfo.txt'slist=[]getStockList(slist,stock_list_url)getStockInfo(slist,stock_info_url,output_file)main() 上述代碼中的print語句用於打印爬取的進度。執行完上述代碼後在D盤會出現BaiduStockInfo.txt文件,裡面存放瞭股票的信息。
點贊 0
每日頭條、業界資訊、熱點資訊、八卦爆料,全天跟蹤微博播報。各種爆料、內幕、花邊、資訊一網打盡。百萬互聯網粉絲互動參與,TechWeb官方微博期待您的關註。
↑掃描特價二維碼
想在手機上看科技資訊和科技八卦嗎?
想第一時間看獨傢爆料和深度報道嗎?
請關註TechWeb官方微信公眾帳號:
1.用手機掃左側二維碼;
2.在添加朋友裡,搜索關註TechWeb。
【Cuisinart超值組】冷熱多功能調理機1TW贈麵包機(快速到貨)怎麼買比較便宜?使用心得【Cuisinart超值組】冷熱多功能調理機1TW贈麵包機(快速到貨)推薦【Cuisinart超值組】冷熱多功能調理機1TW贈麵包機(快速到貨)開箱文#GOODS_NAME#心得分享【Cuisinart超值組】冷熱多功能調理機1TW贈麵包機(快速到貨)哪邊買必較便宜?【Cuisinart超值組】冷熱多功能調理機1TW贈麵包機(快速到貨)家電用品【Cuisinart超值組】冷熱多功能調理機1TW贈麵包機(快速到貨)電視冰箱【Cuisinart超值組】冷熱多功能調理機1TW贈麵包機(快速到貨)家電用品有哪些#GOODS_NAME#家電用品開箱 您或許有興趣的東西:
全站熱搜
留言列表