python读写csv文件的方法

 更新时间:2019年08月13日 08:37:16   作者:zhang_derek  
这篇文章主要介绍了python读写csv文件的方法,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值 ,需要的朋友可以参考下

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)

结果

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文件的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

  • Django 全局的static和templates的使用详解

    Django 全局的static和templates的使用详解

    这篇文章主要介绍了Django 全局的static和templates的使用详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-07-07
  • Python经典案例之图像漫水填充分割详解

    Python经典案例之图像漫水填充分割详解

    图像分割是将图像分成若干具有独特性质的区域并提取感兴趣目标的技术和过程,这篇文章将详细讲解漫水填充分割应用,感兴趣的小伙伴可以了解一下
    2023-01-01
  • 浅谈Pandas:Series和DataFrame间的算术元素

    浅谈Pandas:Series和DataFrame间的算术元素

    今天小编就为大家分享一篇浅谈Pandas:Series和DataFrame间的算术元素,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-12-12
  • 在python中修改.properties文件的操作

    在python中修改.properties文件的操作

    这篇文章主要介绍了在python中修改.properties文件的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-04-04
  • python操作CouchDB的方法

    python操作CouchDB的方法

    这篇文章主要介绍了python操作CouchDB的方法,包括了couchDb库安装、连接服务器、创建数据库、查询数据库、遍历数据库等常用的操作,非常具有实用价值,需要的朋友可以参考下
    2014-10-10
  • Python之指数与E记法的区别详解

    Python之指数与E记法的区别详解

    今天小编就为大家分享一篇Python之指数与E记法的区别详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-11-11
  • python利用dir函数查看类中所有成员函数示例代码

    python利用dir函数查看类中所有成员函数示例代码

    这篇文章主要给大家介绍了关于python如何利用dir函数查看类中所有成员函数的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用python具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习下吧。
    2017-09-09
  • python 全局变量的import机制介绍

    python 全局变量的import机制介绍

    在之前学习python设计模式(工厂模式实践篇),希望使用全局变量代替c++的宏完成服务自动注册功能时,遇到过一个问题,全局变量的定义和使用放在同一个可执行脚本中的问题
    2017-09-09
  • 微信小程序python用户认证的实现

    微信小程序python用户认证的实现

    这篇文章主要介绍了微信小程序python用户认证的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-07-07
  • Python selenium 实例之通过 selenium 查询禅道是否有任务或者BUG

    Python selenium 实例之通过 selenium 查询禅道是否有任务或者BUG

    这篇文章主要介绍了Python selenium 实例之通过 selenium 查询禅道是否有任务或者BUG的相关资料,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-09-09

最新评论