【发布时间】:2021-03-11 14:47:34
【问题描述】:
我有一个 Python 文件,它打印出数组的内容,每行一个数据,print(a['title']),我想将此数据 (a['title']) 写入一个文本文件,每个数据都在新行上。
这是我的代码:
driver.get('https://www.webstie.com/')
html = driver.page_source
soup = BeautifulSoup(html, 'html.parser')
a = soup.select('div.class_name a')
for a in soup.select('div.class_name a'):
#print(a['title'])
textList = (a['title'])
outF = open("file1.txt", "a")
for line in textList:
outF.write(line)
outF.write("\n")
outF.close()
问题是当我使用\n 时,它会写入数据,但每个字母都换行。
如果我取出\n,像这样:outF.write(""),它会将数据写入一行。
S
e
a
r
c
h
f
o
r
"
k
e
y
w
o
r
d
不使用\n的输出:
Search for "keyword result one"Search for "keyword result two"Search for "keyword result three"
我想要的示例输出:
Search for "keyword result one"
Search for "keyword result two"
Search for "keyword result three"
我做错了什么?
【问题讨论】:
-
能否请您添加
print(repr(a['title']))并向我们展示结果? -
似乎 textList = (a['title']) 将 textList 设置为一个字符串,然后您的循环遍历该字符串中的每个单独的字符。
-
@Stef,感谢您的回复,
print(repr(a['title']))将打印与print(a['title'])相同的内容