import requests
import time
from bs4 import beautifulsoup
# 首先我們寫好抓取網頁的函式
url = ""
def get_html(url):
try:
r = requests.get(url, timeout=30)
r.raise_for_status()
r.encoding = 'utf-8'
return r.text
except:
return " error "
def get_content(url):
# 初始化乙個列表來儲存所有的帖子資訊:
comments =
html = get_html(url)
# 我們來做一鍋湯
soup = beautifulsoup(html, 'html.parser')
# 按照之前的分析,我們找到所有具有『 j_thread_list clearfix』屬性的li標籤。返回乙個列表型別。
litags = soup.find_all('li', class_ ="j_thread_list clearfix")
for li in litags:
# 初始化乙個字典來儲存文章資訊
comment = {}
# 這裡使用乙個try except 防止爬蟲找不到資訊從而停止執行
try:
comment['title'] = li.find(
'a', attrs=).text.strip()
comment['link'] = ""+ \
li.find('a', attrs=)['href']
comment['name'] = li.find(
'span', attrs=).text.strip()
comment['time'] = li.find(
'span', attrs=).text.strip()
comment['replynum'] = li.find(
'span', attrs=).text.strip()
except:
print('出了點小問題')
return comments
print (get_content(url))
soup.find_all(class_="")
class後面字串的處理過程中需要注意特殊字元的處理,雖然原網頁**中存在空格,但是匹配過程中寫入空格無法獲取內容資訊,具體細節還需進一步學習。
Python爬蟲實踐,獲取百度貼吧內容
貼吧位址 python版本 3.6 瀏覽器版本 chrome 由於是第乙個實驗性質爬蟲,我們要做的不多,我們需要做的就是 1 從網上爬下特定頁碼的網頁 2 對於爬下的頁面內容進行簡單的篩選分析 3 找到每一篇帖子的 標題 發帖人 日期 樓層 以及跳轉鏈結 4 將結果儲存到文字。其實這些都是中文字元,...
百度貼吧爬蟲
encoding utf 8 import urllib.request import urllib.parse import time import random def load page url 通過url來獲取網頁內容jfa param url 待獲取的頁面 return url對應的網頁內...
3 百度貼吧爬蟲
被寫檔案坑了一晚上,因為自己寫了writefile 但是呼叫的是writefile 剛好python裡面有writefile 所以剛好不報錯!coding utf 8 created on 2018 7月12號 author sss 型別 get請求 from pip.vendor.distlib....