版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第二章爬蟲爬蟲的基本流程HTTP協(xié)議總結(jié)、安裝PyCharm、應(yīng)用舉例目錄爬蟲的基本流程模擬瀏覽器發(fā)送請(qǐng)求(獲取網(wǎng)頁代碼)→提取有用的數(shù)據(jù)→存放于數(shù)據(jù)庫或文件中HTTP協(xié)議Request:用戶將自己的信息通過瀏覽器發(fā)送給服務(wù)器。Response:服務(wù)器接收請(qǐng)求,分析用戶發(fā)來的請(qǐng)求信息,然后返回?cái)?shù)據(jù)(返回的數(shù)據(jù)中可能包含其他鏈接,如:圖片,Javascript,CSS等)。總結(jié)爬蟲流程爬取→解析→存儲(chǔ)。爬蟲所需工具請(qǐng)求庫:Requests,Selenium(可以驅(qū)動(dòng)瀏覽器解析渲染CSS和Javascript,但有性能劣勢(shì),有用沒用的網(wǎng)頁都會(huì)加載)解析庫:正則表達(dá)式,BeautifulSoup,Pyquery存儲(chǔ)庫:文件,MySQL,Mongodb,Redis安裝AnPaycCohnadram(安社裝區(qū)版)安裝AnPaycCohnadram(安社裝區(qū)版)安裝AnPaycCohnadram(安社裝區(qū)版)安裝AnPaycCohnadram(安社裝區(qū)版)安裝AnPaycCohnadram(安社裝區(qū)版)安裝AnPaycCohnadram(安社裝區(qū)版)安裝AnPaycCohnadram(安社裝區(qū)版)安裝AnPaycCohnadram(安社裝區(qū)版)如果想建立一個(gè)爬蟲文件,首先檢查是否安裝了requests,選擇File→Settings→Project
Interpreter選項(xiàng),然后單擊右上角的+,搜requests,選中后點(diǎn)左下角的Install
package,進(jìn)行安裝。應(yīng)用舉例【例2-1】爬取豆瓣讀書Top
250第一頁的內(nèi)容,并存入douban.csv文件中。應(yīng)用舉例import
requestsimport
refrom
bs4
import
BeautifulSoupdef
gethtml(url):try:r
=
requests.get(url,timeout
=
30)r.raise_for_status()r.encoding
=
r.apparent_encodingreturn
r.textexcept:return
"It
is
failed
to
get
html!“def
getcontent(url):headers
=
{"User-Agent":"Mozilla/5.0
(Windows
NT
10.0;
WOW64)應(yīng)用舉例data
=
requests.get(url,headers=headers)
soup
=
BeautifulSoup(data.text,
"lxml")div
=
soup.find("div",id="content")
tables
=
div.find_all("table")price
=
[]date
=
[]nationality
=
[]nation
=
[]bookname=[]link
=
[]score
=
[]comment
=
[]num
=
[]應(yīng)用舉例for
table
in
tables:bookname.append(table.find_all("a")[1]["title"])
link.append(table.find_all("a")[1]["href"])score.append(table.find("span",class_="rating_nums").string)
comment.append(table.find_all("span")[-1].string)people_info
=
table.find_all("span")[-2].textpeople_num=re.findall(r"\d+",
people_info)num.append(people_num[0])navistr
=
(table.find("p").string)infos
=
str(navistr.split("/"))infostr
=
str(navistr)應(yīng)用舉例if
re.findall(r"\[",
s[0]):w
=
re.findall(r"\s\D+",
s[0])author.append(w[0])else:author.append(s[0])price_info
=
re.findall(r"\d+\.\d+",
infos)price.append((price_info[0]))date.append(s[-2])nationality_info
=
re.findall(r"[[](\D)[]]",
infos)nationality.append(nationality_info)for
i
in
nationality:if
len(i)
==
1:nation.append(i[0])else:應(yīng)用舉例dataframe=pd.DataFrame({"書名":bookname,"作者":author,"國籍
nation,"評(píng)分":score,"評(píng)分人數(shù)":num,"出版時(shí)間":date,"價(jià)格":pr接":link,})#將DataFrame存儲(chǔ)為csv,index表示是否顯示行名,default=True
dataframe.to_csv("douban.csv",index=False,encoding=
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年漳州高校畢業(yè)生服務(wù)社區(qū)計(jì)劃招募40人備考題庫附答案
- 2025年齊齊哈爾龍江縣第一人民醫(yī)院公開招聘編外醫(yī)生17人(公共基礎(chǔ)知識(shí))測(cè)試題附答案
- 2026廣東江門市機(jī)關(guān)事務(wù)管理局招聘1人(面點(diǎn)師)筆試備考試題及答案解析
- 2026云南西雙版納州中級(jí)人民法院第一次招聘聘用制審判輔助人員1人筆試備考題庫及答案解析
- 2026重慶市涪陵區(qū)武陵山鎮(zhèn)人民政府招聘公益性崗位1人筆試參考題庫及答案解析
- 2025廣西崇左市江州區(qū)人民政府辦公室招聘2人筆試參考題庫及答案解析
- 2026年陜西中醫(yī)藥大學(xué)體育健康學(xué)院招聘筆試備考試題及答案解析
- 中化學(xué)華誼工程科技集團(tuán)有限公司2026屆校園招聘筆試模擬試題及答案解析
- 內(nèi)江職業(yè)技術(shù)學(xué)院常態(tài)化招聘高層次人才筆試備考試題及答案解析
- 2026湖南長沙市新城學(xué)校春季教師招聘4人筆試備考試題及答案解析
- 新一代能源管理系統(tǒng)建設(shè)方案
- 小型手持式采茶機(jī)
- 人工智能與終身學(xué)習(xí)體系構(gòu)建研究報(bào)告
- 2025杭州市市級(jí)機(jī)關(guān)事業(yè)單位編外招聘考試備考試題及答案解析
- 化學(xué)反應(yīng)原理大題集訓(xùn)(含解析)-2026屆高中化學(xué)一輪復(fù)習(xí)講義
- 團(tuán)隊(duì)成員介紹課件
- 醫(yī)院敏感數(shù)據(jù)安全管理規(guī)范
- 政協(xié)機(jī)車輛管理辦法
- 渝22TS02 市政排水管道附屬設(shè)施標(biāo)準(zhǔn)圖集 DJBT50-159
- 母嬰護(hù)理員職業(yè)道德課件
- 電力工程應(yīng)急管理措施
評(píng)論
0/150
提交評(píng)論