鱼C论坛

 找回密码
 立即注册
查看: 679|回复: 2

抓去豆瓣top250的图书介绍

[复制链接]
发表于 2019-1-21 15:15:05 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
需要爬取的top250图书的名称、评分、链接、以及一句话评价,
https://book.douban.com/top250
但一句话评价不是所有图书都有,特别是第十页的图书,这样遇到空的Python就会停止并报错,请问如何解决?
已经写的部分,抓了名称,评分,链接

import urllib.request as urlrequest
from bs4 import BeautifulSoup

for i in range(0,251,25):
    url_visit = "https://book.douban.com/top250?start={}".format(i)
    crawl_content = urlrequest.urlopen(url_visit).read()
    soup = BeautifulSoup(crawl_content,"html.parser")
    book_list = soup.find_all(class_="item")
    for book in book_list:
        rating = book.find(class_="rating_nums").get_text()
        
        link = book.find(class_="nbg")['href']
        title = book.find(class_="pl2")
        title_name = title.find("a")['title']
        with open("book250.xls","a") as outputfile:
            outputfile.write("{}\t{}\t{}\n".format(title_name,rating,link))
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2019-1-22 15:31:44 | 显示全部楼层
自己解决

import urllib.request as urlrequest
from bs4 import BeautifulSoup

for i in range(0,251,25):
    url_visit = "https://book.douban.com/top250?start={}".format(i)
    crawl_content = urlrequest.urlopen(url_visit).read()
    soup = BeautifulSoup(crawl_content,"html.parser")
    book_list = soup.find_all(class_="item")
    for book in book_list:
        
        try:
            abstract=book.find(class_='inq').get_text()
        except AttributeError:
            abstract="None"

        rating = book.find(class_="rating_nums").get_text()
        link = book.find(class_="nbg")['href']
        title = book.find(class_="pl2")
        title_name = title.find("a")['title']

        with open("book250.xls","a") as outputfile:
            outputfile.write("{}\t{}\t{}\t{}\n".format(title_name,rating,abstract,link))
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-1-22 16:04:37 | 显示全部楼层
楼主要把谁“抓去”豆瓣
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2026-1-13 13:07

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表