Pythonで複数行の改行を1行の改行にする、もしくは、「、」で繋ぐ方法が知りたいです。
company_page = BeautifulSoup(get_response(detail_url).text,'html.parser') company_name = company_page.select_one('h2 a').text dts = company_page.select('.jsDefinitionList dt') dds = company_page.select('.jsDefinitionList dd') for dt, dd in zip(dts,dds): if "業界" in dt.text: print(type(dt.text.strip())) print('業界は、', dd.text.replace('\n','')) exit() if "URL" in dt.text: print('リンク先は、', dd.select_one('a')['href'])
上記コードの実行結果は以下となります。
こちらなのですが、「業界は、 コンサルティング、シンクタンク」ここの部分と「SIer、ソフト開発、システム運用」ここの部分に、複数の改行が存在しています。
仮にprint('業界は、', dd.text.strip())
ここの部分をprint('業界は、', dd.text.replace('\n','')
とした場合、「業界は、 コンサルティング、シンクタンクSIer、ソフト開発、システム運用」ここのように、「シンクタンク」と「SIer」が繋がってしまいます。
こちらの問題を解決する為、どなたかご助言頂けましたら幸いです。
追記です
print('業界は、', dd.text.replace('\n','、'))
こちらのようにした場合は、以下のように「、」が複数ついてしまう状態となってしまいます。
業界は、 、、、コンサルティング、シンクタンク、、、SIer、ソフト開発、システム運用、、、

回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/02/24 02:21