Python 爬蟲 抓取豆瓣讀書TOP250

2021-08-10 01:22:28 字數 1611 閱讀 7140

# -*- coding:utf-8 -*-

# author: yukun

import requests

from bs4 import beautifulsoup

# 發出請求獲得html原始碼的函式

def get_html(url):

# 偽裝成瀏覽器訪問

resp = requests.get(url, headers=headers).text

return resp

# 解析頁面,獲得資料資訊

def html_parse():

# 呼叫函式,for迴圈迭代出所有頁面

for url in all_page():

# beautifulsoup的解析

soup = beautifulsoup(get_html(url), 'lxml')

# 書名

alldiv = soup.find_all('div', class_='pl2')

names = [a.find('a')['title'] for a in alldiv]

# 作者

allp = soup.find_all('p', class_='pl')

authors = [p.get_text() for p in allp]

# 評分

starspan = soup.find_all('span', class_='rating_nums')

scores = [s.get_text() for s in starspan]

# 簡介

sumspan = soup.find_all('span', class_='inq')

sums = [i.get_text() for i in sumspan]

for name, author, score, sum in zip(names, authors, scores, sums):

name = '書名:' + str(name) + '\n'

score = '評分:' + str(score) + '\n'

sum = '簡介:' + str(sum) + '\n'

data = name + author + score + sum

# 儲存資料

f.writelines(data + '********************===' + '\n')

# 獲得所有頁面的函式

def all_page():

base_url = ''

urllist =

# 從0到225,間隔25的陣列

for page in range(0, 250, 25):

allurl = base_url + str(page)

return urllist

# 檔名

filename = '豆瓣圖書top250.txt'

# 儲存檔案操作

f = open(filename, 'w', encoding='utf-8')

# 呼叫函式

html_parse()

f.close()

print('儲存成功。')

豆瓣讀書爬蟲(requests re)

前面整理了一些爬蟲的內容,今天寫乙個小小的栗子,內容不深,大佬請忽略。內容包括對豆瓣讀書 中的書籍的基本資訊進行爬取,並整理,便於我們快速了解每本書的中心。每當爬取某個網頁的資訊時,首先就是要進入到網頁中,看看有沒有什麼爬取過程中的限制,可以檢視 的robots協議。就是在原 的後面加上 robot...

python 爬蟲 豆瓣讀書使用者評分爬蟲

首先我們先建立接下來需要用的的東西 import requests 匯入requests模組用於請求網頁 from lxml import etree 從lxml模組中匯入etree模組用於解析網頁 class userspinfen 定義乙個douban類,用於承載後面的 def init sel...

python爬蟲 豆瓣

在爬蟲時候,通過requests.get 得到不正確的狀態碼 4 表示出錯 異常狀態碼檢視 fr aladdin 4 19 用requests庫的get 函式抓取乙個你平時經常使用的 主頁,並檢視該 的爬蟲協議 如果有的話 預設答案是正確,你成功了嗎?fp.write r.content b.有些 ...