欧美free性护士vide0shd,老熟女,一区二区三区,久久久久夜夜夜精品国产,久久久久久综合网天天,欧美成人护士h版

首頁綜合 正文
目錄

柚子快報激活碼778899分享:大數(shù)據(jù)爬蟲

柚子快報激活碼778899分享:大數(shù)據(jù)爬蟲

http://yzkb.51969.com/

第一部分? 研究對象及結果

1.1 股票及網(wǎng)站選取

本文選取了保利發(fā)展、碧桂園、富力地產(chǎn)、華潤置地、金科股份、龍湖集團、綠地控股、融創(chuàng)中國、萬科A、中海地產(chǎn)十只股票,對同花順官網(wǎng)的股價信息和東方財富網(wǎng)資訊、股吧進行了爬取,并生成詞云。

1.2???????爬蟲結果

圖1.1同花順股價爬取結果

圖1.2東方財富網(wǎng)股吧爬取結果

圖1.3東方財富網(wǎng)資訊爬取結果

圖1.4生成詞云

第二部分? 程序演示

運用Python的request庫,模擬瀏覽器請求,解析網(wǎng)站返回的響應。

2.1同花順網(wǎng)站股價爬取

圖2.1股價爬?。ㄒ唬?/p>

圖2.2股價爬?。ǘ?/p>

圖2.3股價爬?。ㄈ?/p>

圖2.4股價爬?。ㄋ模?/p>

首先,安裝用于網(wǎng)絡請求、數(shù)據(jù)處理、格式化輸出的庫。

requests as r: 用于發(fā)送HTTP請求。urlsplit: 從urllib.parse中導入,用于解析URL。json: 用于處理JSON數(shù)據(jù)。re: 用于正則表達式匹配。pprint: 用于打印數(shù)據(jù)結構。pandas as pd: 一個數(shù)據(jù)處理庫。os: 用于與操作系統(tǒng)交互。sys: 提供對Python解釋器的一些變量和函數(shù)的訪問。tqdm: 一個快速、可擴展的Python進度條庫。

其次,處理一個URL發(fā)送網(wǎng)絡請求,從響應中提取數(shù)據(jù)。

先解析URL,構建一個新的字符串,從而構建正則表達式模式。然后發(fā)送一個網(wǎng)絡請求,獲取響應內(nèi)容,并使用正則表達式來匹配并提取所需的信息。

由于部分網(wǎng)站設有反爬機制,需要根據(jù)網(wǎng)站相關信息進行偽裝,所以本文用HEADERS模擬瀏覽器行為的頭部。若只保留"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36",則會顯示因python發(fā)出請求而被網(wǎng)站禁止,故保留整段頭部信息。

圖2.5同花順HEADERS

?????? 具體來看,HTTP請求頭部 (HEADERS)是一個字典,包含了在發(fā)送HTTP請求時可能會用到的頭部信息。這些頭部信息用于模擬瀏覽器的行為,及遵守某些網(wǎng)站的請求規(guī)則(robots協(xié)議)。

"Dnt": "1": 表示“Do Not Track”,用于告訴網(wǎng)站不要追蹤用戶的瀏覽行為。"Referer": 表示請求的來源URL。"Sec-Ch-Ua"、"Sec-Ch-Ua-Mobile"、"Sec-Ch-Ua-Platform": 這些頭部與瀏覽器的用戶代理字符串相關,用于描述發(fā)起請求的瀏覽器類型、版本和平臺。"User-Agent": 標準的HTTP頭部,用于標識發(fā)出請求的瀏覽器或其他客戶端的類型和版本。

url_hs 和 url_hk是兩個字符串模板,用于構建獲取股票信息的URL。它們分別用于獲取上海證券交易所(HS滬市)和香港證券交易所(HK港市)的股票信息。其中 {} 是一個占位符,可被替換為具體的股票代碼。

以下是本文選取的十只股票

如果正則表達式匹配成功,它會進一步處理提取到的內(nèi)容,比如將其轉換為JSON格式并提取關鍵數(shù)據(jù)。如果匹配失敗,則警告并退出程序。

接下來,從網(wǎng)站獲取股票信息并將以CSV文件的形式保存到本地。

save_root?是一個字符串,定義了保存CSV文件的根目錄名。使用?os.path.exists?檢查該目錄是否存在,如果不存在,則使用?os.mkdir?創(chuàng)建該目錄

使用?tqdm?庫提供的進度條來跟蹤股票信息的獲取進度。遍歷?stock_id?字典,key?是股票名稱,id_?是股票代碼。根據(jù)股票代碼(是否包含 "HK")確定使用哪個URL模板來構建股票信息的URL。

使用?requests?庫發(fā)送GET請求到?stock_url,并帶上之前定義的HTTP請求頭部?HEADERS。

檢查響應的狀態(tài)碼是否成功。如果不是,警告并退出程序。

從響應中獲取文本內(nèi)容。對URL進行分割,并對其進行處理,生成后續(xù)正則表達式匹配所需的字符串。構建正則表達式模式,并在響應文本中搜索匹配的內(nèi)容。

如果匹配成功,則獲取括號內(nèi)的內(nèi)容;否則打印警告并退出程序。

將匹配到的內(nèi)容解析為JSON格式。

檢查?info_dict?字典的長度,并獲取其唯一的鍵對應的值。

提取數(shù)據(jù)并處理,使用之前定義的?str2num?函數(shù)將字符串轉換為數(shù)字。

將處理后的數(shù)據(jù)轉換為Pandas DataFrame,并指定列名。

為DataFrame添加額外的列:日期和股票名字。

將DataFrame保存為CSV文件,文件名以股票名稱命名,并保存到之前創(chuàng)建的目錄中。

2.2東方財富網(wǎng)輿情及情緒爬取

??????????? 以資訊和股吧作為對象,按時間順序提取日期、作者、標題、來源等信息。由于兩者的爬取具有較高的相似性,故下文僅以資訊類為例進行解釋說明。

圖2.6資訊爬取(一)

圖2.7資訊爬?。ǘ?/p>

圖2.8資訊爬?。ㄈ?/p>

圖2.9資訊爬?。ㄋ模?/p>

首先,導入所需的庫,定義示例URL,HEADERS頭部。

os: 用于與操作系統(tǒng)交互。json: 用于處理JSON數(shù)據(jù)。urllib.parse?和?from urllib.parse import urlsplit: 用于處理URL。requests as r: 一個流行的HTTP庫,用于發(fā)送網(wǎng)絡請求。re: 用于對返回的文本內(nèi)容進行正則表達式匹配,提取所需信息。pandas as pd: 一個數(shù)據(jù)處理和分析庫。sys: 提供對Python解釋器使用或維護的一些變量的訪問,以及與解釋器強烈交互的功能。from tqdm import tqdm: 用于顯示數(shù)據(jù)提取或處理的進度

API變量存儲了一個API的URL,這個URL用于搜索或獲取某種數(shù)據(jù)。URL中的cb=和param=是查詢參數(shù),其中cb通常用于JSONP回調,而param則用于傳遞搜索或請求的參數(shù)。

因該程序需要循環(huán)發(fā)送請求,要保留最簡形式。通過對比發(fā)現(xiàn),不同的股票的cb是變化的,刪除后結果不變。故可寫為以下形式:

temp_param_str定義一個經(jīng)過URL編碼的字符串。這個字符串是為了構建完整的API請求URL而準備的,它與API變量拼接,并通過requests庫發(fā)送請求來獲取數(shù)據(jù)。其具體展開如下:

其次,解碼并轉換為python可識別的形式。

解碼temp_param_str中的URL編碼字符,將其轉換為原始字符串。再將解碼后的字符串轉換為Python字典

其中,JSONP是一種跨域解決方案,它允許網(wǎng)頁從另一個域請求數(shù)據(jù)。JSONP通過在請求的URL中指定一個回調函數(shù)名,然后將返回的JSON數(shù)據(jù)作為該函數(shù)的參數(shù)來執(zhí)行,從而實現(xiàn)了跨域。

接下來,對實例網(wǎng)址進行拆分、修改,合成新網(wǎng)址。發(fā)送新請求并保存結果。

定義保存資訊的根目錄,如果該目錄不存在則創(chuàng)建它。

為循環(huán)添加進度條,遍歷字典中的股票名稱。更新請求字典中的keyword為當前股票名稱,并設置請求的頁碼。構建請求URL:將更新后的請求字典轉換為JSON字符串,并去除其中的空格,然后對該字符串進行URL編碼,最后將其附加到API基礎URL上,形成完整的請求URL。

發(fā)送請求并處理響應: 使用requests庫發(fā)送GET請求,并檢查響應的狀態(tài)碼。

處理響應文本并保存數(shù)據(jù)為CSV文件:如果JSON字典中的msg字段值為'OK',則認為請求成功,并將結果添加到current_stock_result列表中。最后,將current_stock_result列表中的數(shù)據(jù)保存為以股票名稱命名的CSV文件。

2.3詞云生成

本部分參考自https://zhuanlan.zhihu.com/p/138356932

導入所需的庫和模塊:

WordCloud, ImageColorGenerator, STOPWORDS:用于生成詞云、顏色生成器以及定義停止詞。jieba:一個中文分詞庫。Image:從PIL庫中導入,用于圖像處理。numpy as np:用于數(shù)值計算。pyplot as plt:用于繪圖。

定義兩個根目錄路徑。使用列表推導式生成兩個文件夾中所有文件的路徑列表

初始化一個空字符串?all_text,用于存儲從CSV文件中提取的所有文本。遍歷?guab_list?和?zixun_list?中的所有文件路徑。對于每個文件,使用?pd.read_csv(file)?讀取CSV文件到一個DataFrame對象?df。遍歷?df?的?title?列,將每個標題添加到?all_text?字符串中,每個標題后面加上換行符?"\n"。遍歷?df?的?content?列,將每個內(nèi)容添加到?all_text?字符串中,每個內(nèi)容后面也加上換行符?"\n"。最后,all_text?字符串將包含從所有CSV文件中提取的所有標題和內(nèi)容。

柚子快報激活碼778899分享:大數(shù)據(jù)爬蟲

http://yzkb.51969.com/

推薦鏈接

評論可見,查看隱藏內(nèi)容

本文內(nèi)容根據(jù)網(wǎng)絡資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點和立場。

轉載請注明,如有侵權,聯(lián)系刪除。

本文鏈接:http://gantiao.com.cn/post/18971688.html

發(fā)布評論

您暫未設置收款碼

請在主題配置——文章設置里上傳

掃描二維碼手機訪問

文章目錄