提问人:Michael Lin 提问时间:5/29/2017 最后编辑:DisappointedByUnaccountableModMichael Lin 更新时间:2/1/2021 访问量:226
beautifulsoup 解析文件夹中的每个 HTML 文件 webscraping [已关闭]
beautifulsoup parse every html files in a folder webscraping [closed]
问:
我的任务是从目录中读取每个html文件。条件是查找每个文件是否包含标签
(1) <strong>OO</strong>
(2) <strong>QQ</strong>
然后
答:
0赞
Tiny.D
5/29/2017
#1
你的函数嵌套在循环中,这就是为什么你写多行给你的,只需将 移出循环并将所有 parti 文本放入一个变量中,如下所示:write
for
index.txt
write
parti_names
participants = soup.find(find_participant)
parti_names = ""
for parti in participants.find_next_siblings("p"):
if parti.find("strong", text=re.compile(r"(Operator)")):
break
parti_names += parti.get_text(strip=True)+","
print parti.get_text(strip=True)
indexFile = open('index.txt', 'a+')
indexFile.write(filename + ', ' + title.get_text(strip=True) + ticker.get_text(strip=True) + ', ' + d_date.get_text(strip=True) + ', ' + parti_names + '\n' )
indexFile.close()
更新:
您可以使用以下方法获取文件名:basename
from os.path import basename
# you can call it directly with basename
print(basename("C:/Users/.../output/100107-.html"))
输出:
100107-.html
评论
0赞
Michael Lin
5/29/2017
我还有另一个问题,我只想要文件名,但输出给了我路径+文件名。我刚刚更新了代码。
评论