《Python網路爬蟲 從入門到實踐》-筆記
阿新 • • 發佈:2019-01-11
第一章 入門
1.python爬蟲的流程
1獲取網頁 2 解析網頁(提取資料)3 儲存資料
技術實現:
- 獲取網頁:基礎: request,urllib,selenium(模擬瀏覽器)。 進階:多程序多執行緒抓取、登陸抓取、突破IP封禁和伺服器抓取
- 解析網頁:基礎:re正則表示式,BeautifulSoup和lxml 進階:解決中文亂碼
- 儲存資料:基礎:存入txt檔案和存入csv檔案 進階:存入MySQL資料庫和 MongolianDB資料庫
第二章 python 入門以及簡單爬蟲
入門知識點:
- 列表 list
- 字典 key value
namebook={"Name:":"Alex","Age":7,"Class":"First"}
for key,value in namebook.items():
print(key,value)
- __init__()方法為類的構造方法 注意:有兩個下劃線 _ _
簡單爬蟲
一:獲取頁面
#!/usr/bin/python
#coding:UTF-8
import requests
link="http://www.santostang.com/"
headers={'User-Agent':'Mozilla/5.0(Windows;U;Windows NT 6.1;en-US;rv:1.9.1.6) Geocko/20091201 Firefox/3.5.6'}
r=requests.get(link,headers=headers)
print(r.text)
上述程式碼獲取了部落格首頁的HTML程式碼
首先 import requests,使用requests.get(link,headers=headers)獲取網頁
用requests的header偽裝成瀏覽器訪問
r是requests的Response回覆物件
r.text是獲取的網頁內容程式碼
二:提取需要的資料
#!/usr/bin/python
#coding:UTF-8
import requests
from bs4 import BeautifulSoup#從bs4這個庫中匯入BeautifulSoup
link="http://www.santostang.com/"
headers={'User-Agent':'Mozilla/5.0(Windows;U;Windows NT 6.1;en-US;rv:1.9.1.6) Geocko/20091201 Firefox/3.5.6'}
r=requests.get(link,headers=headers)
soup=BeautifulSoup(r.text,"lxml")#使用BeautifulSoup解析這段程式碼
title=soup.find("h1",class_="post-title").a.text.strip()
print(title)
獲取HTML程式碼後,需要從整個網頁中提取第一篇文章的標題
用BeautifulSoup這個庫對爬取下來的頁面進行解析
先匯入庫,然後將HTML程式碼轉化為soup物件
用soup.find("h1",class_="post-title").a.text.strip()獲取標題
三:儲存資料
#!/usr/bin/python
#coding:UTF-8
import requests
from bs4 import BeautifulSoup#從bs4這個庫中匯入BeautifulSoup
link="http://www.santostang.com/"
headers={'User-Agent':'Mozilla/5.0(Windows;U;Windows NT 6.1;en-US;rv:1.9.1.6) Geocko/20091201 Firefox/3.5.6'}
r=requests.get(link,headers=headers)
soup=BeautifulSoup(r.text,"lxml")#使用BeautifulSoup解析這段程式碼
title=soup.find("h1",class_="post-title").a.text.strip()
print(title)
with open('title.txt',"a+")as f:
f.write(title)
f.close