python读写csv文件的方法


Posted in Python onAugust 13, 2019

1.爬取豆瓣top250书籍

import requests
import json
import csv
from bs4 import BeautifulSoup
books = []
def book_name(url):
 res = requests.get(url)
 html = res.text
 soup = BeautifulSoup(html, 'html.parser')
 items = soup.find(class_="grid-16-8 clearfix").find(class_="indent").find_all('table')
 for i in items:
  book = []
  title = i.find(class_="pl2").find('a')
  book.append('《' + title.text.replace(' ', '').replace('\n', '') + '》')
  star = i.find(class_="star clearfix").find(class_="rating_nums")
  book.append(star.text + '分')
  try:
   brief = i.find(class_="quote").find(class_="inq")
  except AttributeError:
   book.append('”暂无简介“')
  else:
   book.append(brief.text)
  link = i.find(class_="pl2").find('a')['href']
  book.append(link)
  global books
  books.append(book)
  print(book)
 try:
  next = soup.find(class_="paginator").find(class_="next").find('a')['href']
 # 翻到最后一页
 except TypeError:
  return 0
 else:
  return next
next = 'https://book.douban.com/top250?start=0&filter='
count = 0
while next != 0:
 count += 1
 next = book_name(next)
 print('-----------以上是第' + str(count) + '页的内容-----------')
csv_file = open('D:/top250_books.csv', 'w', newline='', encoding='utf-8')
w = csv.writer(csv_file)
w.writerow(['书名', '评分', '简介', '链接'])
for b in books:
 w.writerow(b)

结果

python读写csv文件的方法

2.把评分为9.0的书籍保存到book_out.csv文件中

'''
1.爬取豆瓣评分排行前250本书,保存为top250.csv
2.读取top250.csv文件,把评分为9.0以上的书籍保存到另外一个csv文件中
'''
import csv
#打开的时候必须用encoding='utf-8',否则报错
with open('top250.csv', encoding='utf-8') as rf:
 reader = csv.reader(rf)
 #读取头部
 headers = next(reader)
 with open('books_out.csv', 'w', encoding='utf-8') as wf:
  writer = csv.writer(wf)
  #把头部信息写进去
  writer.writerow(headers)
  for book in reader:
   #获取评分
   score = book[1]
   #把评分大于9.0的过滤出来
   if score and float(score) >= 9.0:
    writer.writerow(book)

总结

以上所述是小编给大家介绍的python读写csv文件的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
Python程序设计入门(4)模块和包
Jun 16 Python
Python兔子毒药问题实例分析
Mar 05 Python
Linux下用Python脚本监控目录变化代码分享
May 21 Python
Python中http请求方法库汇总
Jan 06 Python
Python的Flask框架中的Jinja2模板引擎学习教程
Jun 30 Python
Python3对称加密算法AES、DES3实例详解
Dec 06 Python
Python音频操作工具PyAudio上手教程详解
Jun 26 Python
python基于K-means聚类算法的图像分割
Oct 30 Python
Python对wav文件的重采样实例
Feb 25 Python
python在一个范围内取随机数的简单实例
Aug 16 Python
详解python UDP 编程
Aug 24 Python
Python调用高德API实现批量地址转经纬度并写入表格的功能
Jan 12 Python
python根据多个文件名批量查找文件
Aug 13 #Python
详解django实现自定义manage命令的扩展
Aug 13 #Python
Python一键安装全部依赖包的方法
Aug 12 #Python
Python之time模块的时间戳,时间字符串格式化与转换方法(13位时间戳)
Aug 12 #Python
浅谈Python2之汉字编码为unicode的问题(即类似\xc3\xa4)
Aug 12 #Python
基于Python2、Python3中reload()的不同用法介绍
Aug 12 #Python
Python递归函数 二分查找算法实现解析
Aug 12 #Python
You might like
PHP XML操作类DOMDocument
2009/12/16 PHP
zend框架实现支持sql server的操作方法
2016/12/08 PHP
老生常谈PHP数组函数array_merge(必看篇)
2017/05/25 PHP
原生php实现excel文件读写的方法分析
2018/04/25 PHP
javascript获得服务器端控件的ID的实现代码
2011/12/28 Javascript
jQuery中的编程范式详解
2014/12/15 Javascript
javascript实现画不相交的圆
2015/04/07 Javascript
基于jQuery实现的QQ表情插件
2015/08/25 Javascript
JavaScript中的this到底是什么(一)
2015/12/09 Javascript
javascript中call apply 与 bind方法详解
2016/03/10 Javascript
JavaScript如何实现跨域请求
2016/08/05 Javascript
js实现加载更多功能实例
2016/10/27 Javascript
js获取指定时间的前几秒
2017/04/05 Javascript
详解如何构建Angular项目目录结构
2017/07/13 Javascript
深入理解ES6 Promise 扩展always方法
2017/09/26 Javascript
在vue中使用v-bind:class的选项卡方法
2018/09/27 Javascript
layui内置模块layim发送图片添加加载动画的方法
2019/09/23 Javascript
小程序使用wxs解决wxml保留2位小数问题
2019/12/13 Javascript
微信小程序复选框实现多选一功能过程解析
2020/02/14 Javascript
Vue使用axios引起的后台session不同操作
2020/08/14 Javascript
改进Django中的表单的简单方法
2015/07/17 Python
简介Python设计模式中的代理模式与模板方法模式编程
2016/02/02 Python
python 读文件,然后转化为矩阵的实例
2018/04/23 Python
django 消息框架 message使用详解
2019/07/22 Python
Python scrapy增量爬取实例及实现过程解析
2019/12/24 Python
关于Python 中的时间处理包datetime和arrow的方法详解
2020/03/19 Python
python3通过subprocess模块调用脚本并和脚本交互的操作
2020/12/05 Python
英国领先的电动可调床制造商:Laybrook
2019/12/26 全球购物
WebSphere面试题:在WebSphere里面如何部署一个应用
2015/08/02 面试题
报到证丢失证明
2014/01/11 职场文书
党校培训自我鉴定范文
2014/04/10 职场文书
党员干部四风问题整改措施思想汇报
2014/10/12 职场文书
张丽莉观后感
2015/06/16 职场文书
教师网络培训心得体会
2016/01/09 职场文书
幼儿园教师心得体会范文
2016/01/21 职场文书
Python中tqdm的使用和例子
2022/09/23 Python