python 获取页面表格数据存放到csv中的方法


Posted in Python onDecember 26, 2018

获取单独一个table,代码如下:

#!/usr/bin/env python3
# _*_ coding=utf-8 _*_
import csv
from urllib.request import urlopen
from bs4 import BeautifulSoup
from urllib.request import HTTPError
try:
  html = urlopen("http://en.wikipedia.org/wiki/Comparison_of_text_editors")
except HTTPError as e:
  print("not found")
bsObj = BeautifulSoup(html,"html.parser")
table = bsObj.findAll("table",{"class":"wikitable"})[0]
if table is None:
  print("no table");
  exit(1)
rows = table.findAll("tr")
csvFile = open("editors.csv",'wt',newline='',encoding='utf-8')
writer = csv.writer(csvFile)
try:
  for row in rows:
    csvRow = []
    for cell in row.findAll(['td','th']):
      csvRow.append(cell.get_text())
    writer.writerow(csvRow)
finally:
  csvFile.close()

获取所有table,代码如下:

#!/usr/bin/env python3
# _*_ coding=utf-8 _*_
import csv
from urllib.request import urlopen
from bs4 import BeautifulSoup
from urllib.request import HTTPError
try:
  html = urlopen("http://en.wikipedia.org/wiki/Comparison_of_text_editors")
except HTTPError as e:
  print("not found")
bsObj = BeautifulSoup(html,"html.parser")
tables = bsObj.findAll("table",{"class":"wikitable"})
if tables is None:
  print("no table");
  exit(1)
i = 1
for table in tables:
  fileName = "table%s.csv" % i
  rows = table.findAll("tr")
  csvFile = open(fileName,'wt',newline='',encoding='utf-8')
  writer = csv.writer(csvFile)
  try:
    for row in rows:
      csvRow = []
      for cell in row.findAll(['td','th']):
        csvRow.append(cell.get_text())
      writer.writerow(csvRow)
  finally:
    csvFile.close()
  i += 1

以上这篇python 获取页面表格数据存放到csv中的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中实现常量(Const)功能
Jan 28 Python
Python实现简单的四则运算计算器
Nov 02 Python
python 查找字符串是否存在实例详解
Jan 20 Python
对python中执行DOS命令的3种方法总结
May 12 Python
Python中staticmethod和classmethod的作用与区别
Oct 11 Python
10 分钟快速入门 Python3的教程
Jan 29 Python
Python线程之定位与销毁的实现
Feb 17 Python
tensorflow2.0与tensorflow1.0的性能区别介绍
Feb 07 Python
python dict如何定义
Sep 02 Python
Python实现自动整理文件的脚本
Dec 17 Python
matplotlib bar()实现多组数据并列柱状图通用简便创建方法
Feb 24 Python
Python中tqdm的使用和例子
Sep 23 Python
python 产生token及token验证的方法
Dec 26 #Python
对python捕获ctrl+c手工中断程序的两种方法详解
Dec 26 #Python
Python图像处理之直线和曲线的拟合与绘制【curve_fit()应用】
Dec 26 #Python
python处理multipart/form-data的请求方法
Dec 26 #Python
Python实现的简单线性回归算法实例分析
Dec 26 #Python
Python基于聚类算法实现密度聚类(DBSCAN)计算【测试可用】
Dec 26 #Python
python使用knn实现特征向量分类
Dec 26 #Python
You might like
在windows iis5下安装php4.0+mysql之我见
2006/10/09 PHP
jq的get传参数在utf-8中乱码问题的解决php版
2008/07/23 PHP
PHP文件读写操作之文件写入代码
2011/01/13 PHP
深入php list()函数的详解
2013/06/05 PHP
web server使用php生成web页面的三种方法总结
2013/10/28 PHP
ThinkPHP查询语句与关联查询用法实例
2014/11/01 PHP
Android AsyncTack 异步任务实例详解
2016/11/02 PHP
一个JS的日期格式化算法示例
2013/07/31 Javascript
JavaScript获取网页中第一个链接ID的方法
2015/04/03 Javascript
JS组件Bootstrap Table布局详解
2016/05/27 Javascript
把多个JavaScript函数绑定到onload事件处理函数上的方法
2016/09/04 Javascript
angularjs实现首页轮播图效果
2017/04/14 Javascript
JS实现table表格固定表头且表头随横向滚动而滚动
2017/10/26 Javascript
Vue2.0用户权限控制解决方案的示例
2018/02/10 Javascript
vue 组件 全局注册和局部注册的实现
2018/02/28 Javascript
通过seajs实现JavaScript的模块开发及按模块加载
2019/06/06 Javascript
使用layui的layer组件做弹出层的例子
2019/09/27 Javascript
微信小程序实现音频文件播放进度的实例代码
2020/03/02 Javascript
Python 编码处理-str与Unicode的区别
2016/09/06 Python
python一键升级所有pip package的方法
2017/01/16 Python
深入理解python中函数传递参数是值传递还是引用传递
2017/11/07 Python
使用Anaconda3建立虚拟独立的python2.7环境方法
2018/06/11 Python
flask框架视图函数用法示例
2018/07/19 Python
python中正则表达式与模式匹配
2019/05/07 Python
Python操作MySQL数据库实例详解【安装、连接、增删改查等】
2020/01/17 Python
使用keras内置的模型进行图片预测实例
2020/06/17 Python
浅析Python __name__ 是什么
2020/07/07 Python
HTML5中视频音频的使用详解
2017/07/07 HTML / CSS
北美三大旅游网站之一:Travelocity加拿大
2016/08/20 全球购物
巴西葡萄酒销售网站:Wine.com.br
2017/11/07 全球购物
"引用"与多态的关系
2013/02/01 面试题
师范毕业生自荐信
2013/10/17 职场文书
六一儿童节致辞稿(3篇)
2019/07/11 职场文书
《鲁滨逊漂流记》之六读后感(4篇)
2019/09/29 职场文书
从结婚开始的恋爱故事。小说《我的美好婚事》TV动画化决定
2022/04/07 日漫
Python中time标准库的使用教程
2022/04/13 Python