使用Python中的逗号刮取数据

我正在使用带有请求和lxml的 Python搜索表.使用tree.xpath找到表中的数据,并将其添加到写入CSV文件的列表中.不幸的是,其中一个表的列中的行包含逗号,这会改变列表中的值的数量.

例:

from lxml import html
import requests

page = requests.get('http://url.com/table')
tree = html.fromstring(page.content)

list1 = tree.xpath('//*[@id=block]/div/tr[*]/td[1]/a/text()')
list2 = tree.xpath('//*[@id=block]/div/tr[*]/td[2]/a/text()')

我刮的表:

Column1 | Column2
A,B,C     X
D,E       Y
F,G,H     Z

电流输出

print list1
['A','B','C','D','E','F','G','H']

print list2
['X','Y','Z']

首选输出

print list1
['a b c','d e','f g h']

print list2
['x','y','z']

我找不到合适的解决方案了.是否有一种简单的方法可以从值中删除逗号或在列表中使用不同的分隔符时保留逗号?谢谢您的帮助!

编辑:这是CSV编写器.

csv_out = open('file.csv','wb')
writer = csv.writer(csv_out,dialect = 'excel-tab')
writer.writerows(list,list2,etc)
csv_out.close()

解决方法

您应该使用csv模块来编写文件.您可以选择分隔符(例如|)或使用引号来处理逗号.

如果您还有其他问题,请与我们联系!

相关文章

功能概要:(目前已实现功能)公共展示部分:1.网站首页展示...
大体上把Python中的数据类型分为如下几类: Number(数字) ...
开发之前第一步,就是构造整个的项目结构。这就好比作一幅画...
源码编译方式安装Apache首先下载Apache源码压缩包,地址为ht...
前面说完了此项目的创建及数据模型设计的过程。如果未看过,...
python中常用的写爬虫的库有urllib2、requests,对于大多数比...