利用CSS选择器爬取豆瓣上的图书


主要技术:熟练掌握requests、BeautifulSoup
爬取图书链接 "https://book.douban.com/latest?icn=index-latestbook-all"

代码块

import requests
from bs4 import BeautifulSoupdef get_film(url):headers = {'User-Agent': 'Mozilla/5.0'}   #防止反爬虫try:r=requests.get(url,headers=headers)r.raise_for_status()r.encoding=r.status_codereturn r.textexcept:return "爬取失败!"def parse_html(html,List):film_name1=[]film_actor1=[]film_actor2=[]soup=BeautifulSoup(html,'html.parser')for name in soup.select(' .detail-frame h2 a'):    #利用BeautifulSoup中的CSS选择器film_name1.append(name.get_text())for actor in soup.select(' p.color-gray'):film_actor1.append(actor.get_text())for i in film_actor1:   #消除文本中的空格和换行字符a=i.replace(' ','')b=a.replace('\n','')film_actor2.append(b)for i in range(len(film_name1)):List.append([film_name1[i],film_actor2[i]])def PrintList(List):tplt = '{0:{2}<20}\t{1:{2}<50}'print(tplt.format("电影",'主演、出版社、时间',chr(12288)))    #chr(12288)字符不够所设置的宽度,采用中文字符填充for item in List:print(tplt.format(item[0], item[1],chr(12288)))def write_to_file(List):#存取文件,如果不设置路径,自动存储在代码所在的文件夹下with open('result.xls','w',encoding='utf-8') as f:for i in range(len(List)):for j in range(len(List[i])):f.write(str(List[i][j]))f.write('\t')f.write('\n')def main():List=[]url="https://book.douban.com/latest?icn=index-latestbook-all"html=get_film(url)parse_html(html,List)PrintList(List)write_to_file(List)main()

爬取结果:
电影                   主演、出版社、时间                                         
火鸟                   [日]手冢治虫/后浪丨北京联合出版公司/2018-10                       
隐剑孤影抄                [日]藤泽周平/译林出版社/2018-8                              
犹太警察工会               [美]迈克尔·夏邦/中信出版社/2018-8                            
坚果壳                  [英]伊恩·麦克尤恩/上海译文出版社/2018-8                         
春天                   阿乙/四川文艺出版社/2018-8-1                               
崖山                   吕玻/后浪丨文化发展出版社/2018-10                             
华龙之宫                 [日]上田早夕里/化学工业出版社/2018-8-1                         
推理作家的信条              王稼骏/新星出版社/2018-8                                  
方岛                   金宇澄/上海人民出版社/2018-8                                
亲爱的陌生人               [法]卡米耶·茹尔迪/北京联合出版公司/2018-8-1                      
花街往事                 路内/人民文学出版社/2018-8-1                               
斜眼狗                  [法]艾蒂安·达沃多/后浪丨北京联合出版公司/2018-10                    
天使之触                 [英]乔纳森·莫里斯/新星出版社/2018-8                           
大问题                  [美]安德斯·尼尔森/后浪丨北京联合出版公司/2018-10                    
罐头厂街                 [美]约翰·斯坦贝克/人民文学出版社/2018-8                         
软刺                   [美]艾米丽•福里德伦德/四川文艺出版社/2018-9                       
我们这一代                李昆武编绘/后浪丨湖南美术出版社/2018-10                          
黑地之绘                 [日]松本清张/人民文学出版社/2018-8                            
寻找邓巴                 [英]爱德华·圣奥宾/未读·文艺家·北京联合出版公司/2018-9                 
水獭先生的新邻居             李星明/连环画出版社/2018-8                                 
我每天只工作3小时            [日]押井守/后浪丨四川人民出版社/2018-10                         
宋徽宗                  [美]伊沛霞/理想国|广西师范大学出版社/2018-8                       
料理图鉴                 [日]越智登代子著/平野惠理子绘/后浪丨湖南美术出版社/2018-9                
两个世界的战争              [美]安东尼·帕戈登(AnthonyPagden)/民主与建设出版社/2018-9         
左道                   [美]万志英(RichardvonGlahn)/社会科学文献出版社/2018-8          
印度佛教史                [日]平川彰/后浪丨北京联合出版公司/2018-9                         
明年更年轻:运动赋能篇          [美]克里斯·克劳利/亨利·洛奇/后浪丨北京联合出版公司/2018-9               
空王冠                  [英]丹·琼斯(DanJones)/社会科学文献出版社/2018-8                
未完的明治维新              [日]坂野润治/社会科学文献出版社/2018-9                          
独自迈向生命的尽头            [奥]让·埃默里/三辉图书/鹭江出版社/2018-8                        
自我驱动心理学              [美]史蒂文•贝格拉斯/STEVENBERGLAS/后浪丨江西人民出版社/2018-9       
精准表达                 [日]高田贵久/后浪丨江西人民出版社/2018-8                         
万物并作                 [美]濮德培(PeterC.Perdue)/生活·读书·新知三联书店/2018-8-1       
写作这门手艺               [美]约翰·麦克菲/浦睿文化·湖南文艺出版社/2018-9                     
正午6                  正午故事/台海出版社/2018-8                                 
韭菜的自我修养              李笑来/江苏凤凰文艺出版社/2018-9-21                           
四君主                  [英]约翰·朱利叶斯·诺威奇/民主与建设出版社/2018-9                    
谁此时孤独                [奥]里尔克/华东师范大学出版社/2018-8                           
海                    [德]弗兰克·施茨廷/后浪丨四川人民出版社/2018-8                      
独抒己见                 [美]纳博科夫/上海译文出版社/2018-9-1         

利用CSS选择器爬取豆瓣上的图书相关推荐

  1. 零基础学Python-爬虫-3、利用CSS选择器爬取整篇网络小说

    本套课程正式进入Python爬虫阶段,具体章节根据实际发布决定,可点击[python爬虫]分类专栏进行倒序观看: [重点提示:请勿爬取有害他人或国家利益的内容,此课程虽可爬取互联网任意内容,但无任何收 ...

  2. python爬虫 — 爬取豆瓣最受关注图书榜

    一个简单的爬取豆瓣最受关注图书榜的小爬虫,在爬取相关信息后,将结果保存在 mongo 中 整个流程分为以下几步: (1)构造url (2)分析网页 (3)编写程序,提取信息 解析,将分别介绍以上几步 ...

  3. 爬取豆瓣读书的图书信息和评论信息

    最近在做毕业设计,需要收集用户的评分数据做协同过滤算法,同时收集评论数据做情感分析 坑点 豆瓣图书可以没有评分,或者用户评论了但没给评分.而且豆瓣图书的编码方式很无奈呀,热门书籍附近总是冷门书籍,无评 ...

  4. Python网络爬虫:利用正则表达式方法爬取‘’豆瓣读书‘’中‘’新书速递‘’条目

    1.简述:正则表达式是爬虫的方法之一,这里利用Requests库进行爬取,尽管Urllib也能进行爬取,但过程过于繁琐,在了解Urllib的爬取过程后,没有进行实战演练,但在学习了Requests的爬 ...

  5. python爬取豆瓣书籍_Python利用lxml模块爬取豆瓣读书排行榜的方法与分析

    前言 上次使用了BeautifulSoup库爬取电影排行榜,爬取相对来说有点麻烦,爬取的速度也较慢.本次使用的lxml库,我个人是最喜欢的,爬取的语法很简单,爬取速度也快. 本次爬取的豆瓣书籍排行榜的 ...

  6. 【视频教程】利用Excel轻松爬取网页上的数据

    说到从网上抓取数据,大多数人马上想到的就是Python,但是有的时候不用Python也可以搞定.今天给大家分享一篇如何利用Excel抓取网站上我们所需要的多页数据. 如抓取新浪财经股票页面中的2019 ...

  7. python如何用xpath爬取指定内容_Python利用Xpath选择器爬取京东网商品信息

    HTML文件其实就是由一组尖括号构成的标签组织起来的,每一对尖括号形式一个标签,标签之间存在上下关系,形成标签树:XPath 使用路径表达式在 XML 文档中选取节点.节点是通过沿着路径或者 step ...

  8. python爬取京东商品信息代码_Python利用Xpath选择器爬取京东网商品信息

    HTML文件其实就是由一组尖括号构成的标签组织起来的,每一对尖括号形式一个标签,标签之间存在上下关系,形成标签树:XPath 使用路径表达式在 XML 文档中选取节点.节点是通过沿着路径或者 step ...

  9. 利用selenium尝试爬取豆瓣图书

    目录 一.小小课堂 二.selenium+driver初步尝试控制浏览器 三.完整代码 四.运行结果 链接:https://search.douban.com/book/subject_search? ...

最新文章

  1. Windows Phone7天初学(4):数据绑定
  2. 在什么时候才会用到fireEvent方法呢?
  3. enum2str做为queryValue时的问题
  4. [原创] debian 9.3 搭建Jira+Confluence+Bitbucket项目管理工具(三) -- 安装confluence 6.6.1
  5. android activity切换动画
  6. Spring对java模块化支持_Spring项目对JDBC的支持和基本使用
  7. 在ASP.NET Core中实现一个Token base的身份认证
  8. wordpress 插件_如何为您的Web应用程序创建WordPress插件
  9. 「轻松转换」专业的PDF转换Excel软件:PDF to Excel Converter for Mac
  10. 基于JAVA+SpringBoot+Mybatis+MYSQL的请假与审批系统
  11. C++面试宝典之STL向量容器
  12. 大学四年只学java_大学四年废了怎么办,不如来学java
  13. 用R语言实现数据离散化
  14. 怎么下载linux历史文件,快速学习Linux-Linux历史
  15. 【转】所需即所获:像 IDE 一样使用 vim
  16. houdini大神自诉:为什么我要放弃maya I
  17. 在华为工作十年的感悟
  18. 案例分析:从误删除数据库血案看数据库系统的安全设计
  19. Linux(Debian11)安装百度网盘
  20. ubuntu php7 pdo,记录捣鼓ubuntu下PHP7.1下安装sqlserver拓展

热门文章

  1. 用std::string::compare()用法
  2. MT如何调用C#的dll所产生问题
  3. 手握大数据互联网对抗传统电影底气足
  4. html中a href /a的用法
  5. 后浪小萌新Python --- requests的使用
  6. weex 选择器 weex picker weex-x-picker
  7. 解決com.atomikos.icatch.RollbackException: Prepare: NO vote
  8. BIOS的二十四个解答
  9. python统计英文首字母出现的次数
  10. vue nuxt npm 调用百度地图