###前提・実現したいこと
BeautifulSoupで取ってきた要素が
['\n', <a href="url"> 記事タイトル </a>, '\n']
となっているのを url + 記事タイトル の形で出力したい
###該当のソースコード
python
1import requests 2from bs4 import BeautifulSoup 3 4keywords = ['経済','株価'] 5cols = [] # 検索ワードの列リストを保持 6for kw in keywords: 7 url = "https://r.nikkei.com/search?keyword=" + kw; 8 col = [] # 1列分のリスト 9 r = requests.get(url) 10 soup = BeautifulSoup(r.text, 'lxml') 11 12#取り出したい要素 13 for l in soup.find_all(class_='nui-card__title'): 14 nlist = l.contents # URL 15 col.append(nlist) 16 17 cols.append(col) # 列全体を追加 18 19# 全列を行(タプル)に展開 20for line in zip(*cols): # = for c1,c2 in zip(cols[0],cols[1]): 21 print(line)
###試したこと
nlist = l.textにするとurl部分が消えてしまうし、unwrapや正規表現も使い方が分からず困っています。
###補足情報(言語/FW/ツール等のバージョンなど)
python3.6 beautifulsoup4.6.0
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/11/09 07:15