サイトからのコンテンツを解析して、ノードからのテキストのみを出力しようとしています.text.strip()を使用していますが、正しく動作しません。BeautifulSoupタグなしのストライプテキストの抽出
マイコード:
import requests
from bs4 import BeautifulSoup
r = requests.get('http://examplesite.net')
soup = BeautifulSoup(r.content, 'lxml')
builddata = soup.find('table', {'id':'BuildData'})
table_elements = builddata.find_all('tr')
for element in table_elements:
element_dict = {'element_name':element.findChildren()[0].text.strip(), 'element_value':element.findChildren()[1].text.strip()}
print(element_dict)
結果:問題と
{'element_value': 'Студия; 1-к кв; 2-к кв; 3-к кв; 4-к кв',
{'element_value': 'Квартира у воды, \t\t \t\tЗеленая зона', 'element_name': 'Особенности:'}
ライン、必要があるように見えます:私が間違ってやっている
{'element_value': 'Студия; 1-к кв; 2-к кв; 3-к кв; 4-к кв',
{'element_value': 'Квартира у воды, Зеленая зона', 'element_name': 'Особенности:'}
?あなたはあなたの例でやるように見えるとして、次のような何かを行うことができ、一つだけのスペースで複数の空白文字を置き換えるために
>>> ' test test '.strip()
'test test'
:
完璧ですが、このように1行が返されました。 - 118 017 - \ n 147 840 –
@コンスタンチンルサノフ、videl、それを見て、感謝してください。 – alecxe
@ ConstantinRusanovが答えて、それが助けて欲しい! – alecxe