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处理RSS、ATOM模块FEEDPARSER介绍
Feb 18 Python
Python简单网络编程示例【客户端与服务端】
May 26 Python
Python 判断 有向图 是否有环的实例讲解
Feb 01 Python
python MySQLdb使用教程详解
Mar 20 Python
Python读写及备份oracle数据库操作示例
May 17 Python
pycharm 取消默认的右击运行unittest的方法
Nov 29 Python
浅谈Python 递归算法指归
Aug 22 Python
python 调用pyautogui 实时获取鼠标的位置、移动鼠标的方法
Aug 27 Python
python 图片二值化处理(处理后为纯黑白的图片)
Nov 01 Python
Python 通过监听端口实现唯一脚本运行方式
May 05 Python
五种Python转义表示法
Nov 27 Python
Python人工智能之混合高斯模型运动目标检测详解分析
Nov 07 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
linux下 C语言对 php 扩展
2008/12/14 PHP
PHP与SQL注入攻击防范小技巧
2011/09/16 PHP
PHP的password_hash()使用实例
2014/03/17 PHP
谈谈 PHP7新增功能
2015/12/16 PHP
php依赖注入知识点详解
2019/09/23 PHP
基于jquery的15款幻灯片插件
2011/04/10 Javascript
node.js中的querystring.unescape方法使用说明
2014/12/10 Javascript
浅谈javascript事件取消和阻止冒泡
2015/05/26 Javascript
尝试动手制作javascript放大镜效果
2015/12/25 Javascript
jQuery 3.0 的变化及使用方法
2016/02/01 Javascript
使用jQuery实现Web页面换肤功能的要点解析
2016/05/12 Javascript
JS实现根据文件字节数返回文件大小的方法
2016/08/02 Javascript
javascript动画系列之模拟滚动条
2016/12/13 Javascript
vue实现添加标签demo示例代码
2017/01/21 Javascript
Vue.js 2.5新特性介绍(推荐)
2017/10/24 Javascript
解决option标签selected="selected"属性失效的问题
2017/11/06 Javascript
使用Vue完成一个简单的todolist的方法
2017/12/01 Javascript
web前端vue filter 过滤器
2018/01/12 Javascript
jQuery实现输入框的放大和缩小功能示例
2018/07/21 jQuery
详解Nuxt.js 实战集锦
2019/11/19 Javascript
Vue2.x-使用防抖以及节流的示例
2021/03/02 Vue.js
Python学习资料
2007/02/08 Python
Python利用字典将两个通讯录文本合并为一个文本实例
2018/01/16 Python
Python列表元素常见操作简单示例
2019/10/25 Python
Python turtle库绘制菱形的3种方式小结
2019/11/23 Python
Python 如何查找特定类型文件
2020/08/17 Python
python实现跨年表白神器--你值得拥有
2021/01/04 Python
八年级音乐教学反思
2014/01/09 职场文书
《老王》教学反思
2014/02/23 职场文书
奥巴马英文演讲稿
2014/05/15 职场文书
国际贸易求职信
2014/07/05 职场文书
党员贯彻十八大精神思想汇报范文
2014/10/25 职场文书
酒店收银员岗位职责
2015/04/07 职场文书
2015财务年度工作总结范文
2015/05/04 职场文书
复兴之路展览观后感
2015/06/02 职场文书
车辆管理制度范本
2015/08/05 职场文书