私の全体的な目標は、テキスト内の特定の単語を含むタグを分離し、テキストファイルにのみ印刷することです。BeauitfulSoupでテキストを抽出した後、その抽出されたデータで何ができますか?
これまでは、特定のタグ(この場合は)を抽出して、テキストファイルに出力することができました。
私の質問は、一度抽出したすべてのテキストを取得していますが、どうすればいいですか?私は、特定の単語を分離して、必要なものだけテキストをさらにトリミングする方法を見つけ出すのに苦労しています。私に返される何
import urllib2
from BeautifulSoup import BeautifulSoup
url = 'http://www.website.com'
page = urllib2.urlopen(url)
soup = BeautifulSoup(page.read())
page = soup.findAll('title')
for element in page:
print element
file_name = raw_input("What do you want to name the file?> ")
text_file = open("/Users/user1/Projects/%s.txt" % file_name, "w")
text_file.write("%s" % page)
text_file.close()
は次のとおりです:ここで
は、私がこれまで持っているものである
$<title>food</title>
<title>ball</title>
<title>car</title>
<title>desk</title>
<title>blue food</title>
<title>green food</title>
<title>red ball</title>
私は「食べ物」を含めるだけで、印刷結果になるだろうどのように?
恐ろしいです!ありがとう、それは完全に働いた。だから、.stringを追加することで結果を文字列に変換できますか?また、それに関係なく、私が必要とするものを返す方法はありますか?たとえば、「食べ物」と「食べ物」の両方が必要な場合。 –
はい、その要素の開始タグと終了タグの間の文字列です。 –
@AlexRamadan:あなたは 'food'と' Food'のどちらかを別々にチェックすることができます(論理OR演算子を使用します)。また、柔軟性を高めるために、正規表現を使用することもできます。 (これはまた、 "食べ物"のようなもののマッチを除いて、 "全体の単語としてのみ"食べ物にマッチするようなことをさせるでしょう –