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 os模块介绍
Nov 30 Python
python避免死锁方法实例分析
Jun 04 Python
Python应用03 使用PyQT制作视频播放器实例
Dec 07 Python
Python实现将16进制字符串转化为ascii字符的方法分析
Jul 21 Python
Python 3.x读写csv文件中数字的方法示例
Aug 29 Python
利用信号如何监控Django模型对象字段值的变化详解
Nov 27 Python
Python自定义函数实现求两个数最大公约数、最小公倍数示例
May 21 Python
Python双向循环链表实现方法分析
Jul 30 Python
Python3.7.0 Shell添加清屏快捷键的实现示例
Mar 23 Python
Django 解决由save方法引发的错误
May 21 Python
python利用opencv保存、播放视频
Nov 02 Python
Python非单向递归函数如何返回全部结果
Dec 18 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 ajax 静态分页过程形式
2011/09/02 PHP
php实现CSV文件导入和导出
2015/10/24 PHP
Laravel框架实现model层的增删改查(CURD)操作示例
2018/05/12 PHP
在laravel中实现将查询的对象转换为多维数组的函数
2019/10/21 PHP
JS BASE64编码 window.atob(), window.btoa()
2021/03/09 Javascript
关于取不到由location.href提交而来的上级页面地址的解决办法
2009/07/30 Javascript
JQuery 获取和设置Select选项的代码
2010/02/07 Javascript
如何让页面在打开时自动刷新一次让图片全部显示
2012/12/17 Javascript
Javascript堆排序算法详解
2014/12/03 Javascript
javascript数组随机排序实例分析
2015/07/22 Javascript
分享两段简单的JS代码防止SQL注入
2016/04/12 Javascript
js实现的万能flv网页播放器代码
2016/04/30 Javascript
jQuery on()方法绑定动态元素的点击事件无响应的解决办法
2016/07/07 Javascript
给easyui datebox扩展一个清空的实例
2016/11/09 Javascript
解析JavaScript实现DDoS攻击原理与保护措施
2016/12/26 Javascript
react.js 翻页插件实例代码
2017/01/19 Javascript
用angular实现多选按钮的全选与反选实例代码
2017/05/23 Javascript
Javascript实现动态时钟效果
2018/11/17 Javascript
JS实现简单的点赞与踩功能示例
2018/12/05 Javascript
jQuery实现的移动端图片缩放功能组件示例
2020/05/01 jQuery
详解Python中用于计算指数的exp()方法
2015/05/14 Python
python实现DES加密解密方法实例详解
2015/06/30 Python
python getopt详解及简单实例
2016/12/30 Python
python 迭代器和iter()函数详解及实例
2017/03/21 Python
Python计算开方、立方、圆周率,精确到小数点后任意位的方法
2018/07/17 Python
python实现简单日期工具类
2019/04/24 Python
六行python代码的爱心曲线详解
2019/05/17 Python
python通过nmap扫描在线设备并尝试AAA登录(实例代码)
2019/12/30 Python
Python3+Django get/post请求实现教程详解
2021/02/16 Python
欧洲顶级的童装奢侈品购物网站:Bambini Fashion(面向全球)
2018/04/24 全球购物
雷曼兄弟的五金店:Lehman’s Hardware Store
2019/04/10 全球购物
英国奢侈品牌时尚购物平台:Farfetch(支持中文)
2020/02/18 全球购物
技能比武方案
2014/05/21 职场文书
工作收入证明模板
2015/06/12 职场文书
安全第一课观后感
2015/06/18 职场文书
中国古风插画师排行榜:夏达第一,第三是阴阳师姑获鸟皮肤创作者
2022/03/18 国漫