2016-06-19 6 views
0

私のPython Webスクレープのフォーマットに役立つ必要があります。どんな理由であれ、私が必要とする情報が得られると、言葉はタブではなくタブで固定されているように見えます。Pythonはタブをどこにも置かないでください

すべてのヘルプはstrip引数を提供

おかげ

import requests 
from bs4 import BeautifulSoup 

r = requests.get("http://www.canadianappliance.ca/Refrigerators-And-Fridges-3/Full-Size-Refrigerators-38/French-Door-Refrigerators-48/?per_page=all") 

r.content 

soup = BeautifulSoup(r.content) 


g_data = soup.find_all("h2", {"class": "product_link"}) 

for item in g_data: 
    print (item.text) 
+0

を、あなたは*場所*のうち、タブ付きとはどういう意味ですか? –

+0

申し訳ありませんが正しい単語でした。私が検索する最初の単語は、おそらく左の余白の右側に40文字です。 – nobb666

+0

'[item.text.strip()for g_data]' - それはあなたが望むものですか?これらのタブはすべて元のHTMLにあります... – MaxU

答えて

1

使用.get_text()を高く評価しています。また、スペースで改行を置き換える:

g_data = soup.find_all("h2", {"class": "product_link"}) 
for item in g_data: 
    print(item.get_text(strip=True).replace("\n", " ")) 

プリント:

Samsung - RF220NCTASR 
Samsung - RF18HFENBSR 
Samsung - RF23HCEDBSR 
... 
Haier - HRF15N3AGS 
GE Profile - PWE23KMKES 
+0

OK、それはほとんど働いた。字下げはなくなりましたが、書式設定では2行に単語が配置されます。私はそれらを1行に必要とします。 – nobb666

+0

@ nobb666はい、答えを更新しました。見てみな。 – alecxe

+0

完全に動作します。ありがとう – nobb666

関連する問題