python - 无法将 python 脚本输出导出到同一个 csv 文件中
问题描述
#!/usr/bin/python
import requests
from bs4 import BeautifulSoup
import csv
class GetFeeds(object):
def main(self):
self.malc0de()
self.malwaredomainlist()
def malc0de(self):
url=requests.get('http://malc0de.com/rss/')
feed=url.content
soup=BeautifulSoup(feed,'html.parser')
with open("feeds_123.csv", "w") as f:
writer = csv.writer(f, delimiter=";")
for link in soup.find_all('item'):
desc = link.find('description').contents
formatted_desc = desc[0].split(",")
formatted_desc_contents = [cont.split(":")[1] for cont in formatted_desc]
print formatted_desc_contents
writer.writerow(formatted_desc_contents)
def malwaredomainlist(self):
url=requests.get('http://www.malwaredomainlist.com/hostslist/mdl.xml')
feed2=url.content
soup=BeautifulSoup(feed2,'html.parser')
##print soup.prettify()
with open("feeds_123.csv", "w") as b:
writer = csv.writer(b, delimiter=";")
for link in soup.find_all('item'):
desc = link.find('description').contents
formatted_desc = desc[0].split(",")
formatted_desc_contents = [cont.split(":")[1] for cont in formatted_desc]
print formatted_desc_contents
writer.writerow(formatted_desc_contents)
if __name__ == "__main__":
o = GetFeeds()
o.main()
目前,我正在尝试将信息从 mac0de 和malwaredomainlist 导出到同一个名为 feeds_123.csv 的文件中,但是 csv 文件只显示malwaredomainlist 项目,而不是同时显示两者。我尝试将其提取到 2 个不同的文件中。我可以知道如何解决此错误并提取到同一个文件中吗?
解决方案
您需要以“a”模式打开文件,而不是“w”,“a”表示追加,并将新内容添加到以前的内容。“w” 将清理文件并覆盖那里的任何内容。
推荐阅读
- python - 加载工作簿时这个openpyxl“ValueError”是什么意思?
- wordpress - 我们可以根据另一个分类术语获取分类术语列表吗?
- python - Django - Django 标记库包的建议
- python - 加入两个数据框pyspark
- python - 如何从 Python 中的 2D 离散小波变换系数计算香农熵、能量、平均值等?
- google-chrome - 如何使在命令提示符窗口中运行的批处理代码无法关闭?
- msbuild - 如何使用目标标签在 .Net Standard 项目中包含 EmbeddedResource?
- javascript - 在pdf中单击时,有没有办法删除我的默认文本字段值?
- r - 是否有任何函数可以计算 glmer 的部分响应?
- tensorflow - AttributeError:该层从未被调用,因此没有定义的输出形状