beautifulsoupでlinkタグの中身を取得したい
スクレイピングの練習として、とあるRSSのデータの取得を行っています。
その中で、<link></link>で囲まれている部分のテキストがどうしても取得できません。
対象ページのHTML構造
下記からitem内のテキストを順に取得しようとしています。
html
1<item> 2 <title>タイトル</title> 3 <link>https://hogefuga.php</link> 4 <description>hoge</description> 5</item>
pythonのソースコード
(本来はrequestsでhtmlを取得してきていますが、冗長となるため省略いたしました。)
python
1 2# -*- coding:utf-8 -*- 3 4from bs4 import BeautifulSoup 5 6s = '<item><title>タイトル</title><link>https://hogefuga.php</link><description>hoge</description></item>' 7soup = BeautifulSoup(s, "lxml") 8print(soup.link) 9
発生している問題・エラーメッセージ
上記のコードで実行したところ、Noneが返ってきます。
試したこと
soupをprintしたところ、
print(soup) >> <item><title>タイトル</title><link/>https://hogefuga.php<description>hoge</description></item>
なぜかもともともhtmlのテキストでは<link></link>で囲まれている部分が、
</link>に置き換わってしまい、結果的に ``` soup.link >> None ``` となっているようです。なぜ書き換わってしまうのか、まったくわからず投稿いたしました。
何卒宜しくお願い致します。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/10/24 15:29