爬取豆瓣Top250图书数据 焦点资讯
【资料图】
项目的实现步骤1.项目结构2.获取网页数据3.提取网页中的关键信息4.保存数据1.项目结构
2.获取网页数据对应的网址为https://book.douban.com/top250
import requestsfrom bs4 import BeautifulSoup"""获取网页数据,解析数据,将相应的数据传出"""def get_page(url): headers = { "User-Agent":"Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) " "AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 " "Mobile Safari/537.36 Edg/114.0.1823.43" } resp=requests.get(url,headers=headers) soup=BeautifulSoup(resp.text,"html.parser") return soup
3.提取网页中的关键信息获取传出的解析后的数据,获取对应的图片,书名,作者,价格,评价,简介
from geturlcocument.get_document import get_pageimport re# 初始数据pictures=[]names=[]authors=[]prices=[]scores=[]sums=[]def get_single(): # 网址地址 urls = [f"https://book.douban.com/top250?start={num}" for num in range(0,250,25)] for url in urls: # 获取对应的网页文本 text = get_page.get_page(url) # 所有数据的集合 all_tr = text.find_all(name="tr", attrs={"class": "item"}) # 查找每个单项 for tr in all_tr: # 数据类型:图片,书名,作者,价格,评分,简介 # 图片 picture = tr.find(name="img") picture = picture.get("src") # print(picture) # 书名 div = tr.find(name="div", attrs={"class": "pl2"}) name = div.find("a").text name = re.sub(r"\s+", "", name) # 作者 author = tr.find(name="p", attrs={"class": "pl"}).text author = author.split("/")[0] # 价格 price = author.split("/")[-1] price = re.sub(r"元", "", price) # 评分 score = tr.find(name="span", attrs={"class": "rating_nums"}).text try: sum = tr.find(name="span", attrs={"class": "inq"}).text except AttributeError: sum = "" pictures.append(picture) names.append(name) authors.append(author) prices.append(price) scores.append(score) sums.append(sum) data = { "picture": pictures, "name": names, "author": authors, "price": prices, "score": scores, "sum": sums } return data
将获取的数据存入到字典中,将数据传出,使用re库对相应的数据进行处理,运用异常检错4.保存数据获取传出的字典类型的数据,将数据存入到pandas的DataFrame类型中
from geturlcocument.get_single_docuemnt import get_singleimport pandas as pd# 获取字典类型的数据data=get_single.get_single()# 用pandas的DataFrame类型存储数据df=pd.DataFrame(data)df.to_csv("./books.csv",encoding="utf-8")print("ending of data")
该项目完成!!!
上一篇:全球热点评!东莞理工学院三门课程获第二批国家级一流本科课程
下一篇:最后一页
-
妇炎洁广告被指侮辱女性上热搜 官方致歉来了!5月17日,妇炎洁广告被指侮辱女性登上热搜。据了解,近日,妇炎洁电商官方旗舰店一款女性私处用品广告被指侮辱女性,广告写道:中日韩三国
-
花8000多元买的商品,白等两个月却没收到货?亚马逊回应“花8000多元买的商品,白等了两个月却没收到货。”近日,消费者赵先生向《中国消费者报》投诉,称他通过亚马逊购物APP下了两笔订单,在等待两个月后订单均被强制取消。
-
广东省消委会发布二手车买卖合同示范文本为配合广东省推进“阳光二手车”工作,促进二手车流通行业健康发展,推动经营主体树立诚信经营理念,规范二手车交易行为,切实保护消费者的合法权益。
-
国家卫健委:家庭医生签约服务“最后一公里”有望打通3月15日,国家卫生健康委、财政部等六部门共同提出的《关于推进家庭医生签约服务高质量发展的指导意见》(以下简称《意见》)发布。
-
2022年1~2月房企拿地榜出炉:冠军碧桂园近日,中指研究院公布了2022年1~2月房企拿地(金额)TOP100榜单。令业内惊讶的是,除了品牌房企名次“乾坤大挪移”,榜单内还冒出了许多“名不见经传”的新面孔。
X 关闭
资讯
X 关闭
聚焦