【发布时间】:2016-04-10 19:57:02
【问题描述】:
我正在编写一个抓取工具来打开 CSV、获取链接列表、提取站点中的特定 HTML 标记(演讲)并将内容保存在 TXT 文件中,该文件以演讲的日期命名。
这是我完成的:
#encoding:utf-8
import csv
import urllib
import lxml.html
import unicodedata
objeto = csv.reader(open('links.csv', 'rU'), dialect=csv.excel_tab)
for link in objeto:
connection = urllib.urlopen(link[0])
dom = lxml.html.fromstring(connection.read())
discurso = []
for d in dom.xpath('//div[@id="content-core"]/div/p/text()'):
discurso.append(d)
d1 = " ".join(discurso)
data = dom.xpath('//span[@class="documentPublished"]/text()[normalize-space()]')
data1 = [date.strip() for date in data]
make_string = "-".join(data1)
file = open(make_string+'.txt', 'w')
file= arquivo.write(d1)
file.close()
我能够提取日期和演讲,但最后一步不起作用。尝试将语音 a 保存为 TXT 文件时,IDLE 向我显示消息
IOError: [Errno 2] No such file or directory: '17/12/2010 23h39,.txt'
我在创建文件时尝试使用“w”和“a”,但失败了。我做错了什么?
【问题讨论】:
-
@jDo不,这些问题都与OP的问题无关,绝对路径也无关。请注意,代码正在写入文件,因此它不需要事先存在。问题是指示目录的斜线。
标签: python web-scraping lxml