使用Python从文本文件中提取单词

时间:2014-07-29 01:59:49

标签: python words

这整个Python的事情还是很新的。这就是我想要做的事情:

Extracting words from txt file using python

类似的那样,但是我不需要在单引号之间取出单词,而是需要用双引号来表达单词。

现在,我有一个脚本抓取一个网站并保存HTML。效果很好。没问题。 然后我让BeautifulSoup安排HTML并搜索页面中我需要的数据所在的所有表。 以下是其中一个表格行的示例:

<td style="background-color:red;w ...blahblahblah... margin:0px;background:none" title="Bland NB" type="button" value="TRX"/>

BeautifulSoup将所有HTML排列为每行一个表行(如果有意义的话)我使用正则表达式进行搜索只能拉出其中有“background-color:red”的表格行,因为红色的是我唯一关心获得头衔的人。我只需要逐行执行脚本(就像上面有大约350行,但有不同的标题)并在'title ='之后取出引号中的内容并将其全部保存到文本文件中“title = “如果你知道我的意思,每行进入......

我认为BeautifulSoup可能会这样做。我一直在与分区和条带功能搏斗,但无法让它们做我想让他们做的事情。我也认为我可以使用正则表达式来做它,但这本身就是一种蠕虫病毒。

我太近了!任何帮助非常感谢!!

谢谢!

修改

我无法发布更多代码,因为它包含公司IP和我无法在野外发布的信息。遗憾。

- 布伦特

1 个答案:

答案 0 :(得分:0)

html = """
<td style="background-color:red;w ...blahblahblah... margin:0px;background:none" title="Bland NB" type="button" value="TRX"/>
"""

from bs4 import BeautifulSoup
soup = BeautifulSoup(html)

if "background-color:red" in td.get("style"):
    print soup.td.get("title")
    Bland NB

把它们放在一起:

soup = BeautifulSoup(html)

all_tds = soup.findAll("td")

with open("out.txt","a+") as f:
    for td in all_tds:
        if "background-color:red" in soup.td.get("style"):
            f.write(soup.td.get("title")+"\n")