2016-11-11 7 views
0

私は、PythonでこするのWebでの初心者です。私はPythonを使ってウェブスクレープを試みています - 美しいスープとセレン。私の目的は、強調表示された要素を取得することです[この場合、1200 Sqftとイベントだけです]。これは私のHTMLコード、Python-Webスクレイピング。強調表示されている要素を取得する方法は大胆ですか?

</div> 
<section class='space-section'> 
<table class='space-features'> 
<tbody> 
<tr> 
<td> 
<i class='icon-measuringtape'></i> 
<p class='space-feature-name'>1,200 sqft</p> 
</td> 
<td class='disabled'> 
<i class='icon-store'></i> 
<p class='space-feature-name'>Retail</p> 
</td> 
<td class='disabled'> 
<i class='icon-restaurant'></i> 
<p class='space-feature-name'>Bar &amp; Restaurant</p> 
</td> 
<td class=''> 
<i class='icon-event'></i> 
<p class='space-feature-name'>Event</p> 
</td> 
<td class='disabled'> 
<i class='icon-share'></i> 
<p class='space-feature-name'>Shop Share</p> 
</td> 
<td class='disabled'> 
<i class='icon-star'></i> 
<p class='space-feature-name'>Unique</p> 
</td> 
</tr> 
</tbody> 
</table> 
</section> 

で、私のウェブサイトのURLはこれです - https://www.appearhere.co.uk/spaces/north-kensington-upcycling-store-and-cafe私は私の出力print文はこのような何か、SQFTになりたい

から1200平方フィート、小売 - いいえ、バーやレストラン - いいえ、イベント - はい、ショップシェア - いいえ、一意ではありません - いいえ、これについての解決策を教えてください。

+0

画像を貼り付けるのではなく、質問にコードを追加してください。 – Swanand

+0

@Swanandありがとうございます。今質問に変更を加えました –

答えて

0

を助け、このコードを試してみてください。

from selenium import webdriver 
from bs4 import BeautifulSoup 

driver = webdriver.Chrome() 
url= "https://www.appearhere.co.uk/spaces/north-kensington-upcycling-store-and-cafe" 
driver.maximize_window() 
driver.get(url) 

content = driver.page_source.encode('utf-8').strip() 
soup = BeautifulSoup(content,"html.parser") 
space=soup.find("table",{"class":"space-features"}) 
feature=space.find_all("p") 
options=[y.text for y in feature] 
disabled=space.find_all("td",{"class":"disabled"}) 
options1=[y.text.strip() for y in disabled] 

for x in options: 
    if 'sqft' in x: 
     print "SQFT - ",x 
    elif x in options1: 
      print x , " - No" 
    else: 
     print x , " - Yes" 

これが印刷されます:

SQFT - 1,200 sqft 
Retail - No 
Bar & Restaurant - No 
Event - Yes 
Shop Share - No 
Unique - No 

希望、これはあなたが

何をしたいです
+0

おかげで百万PIP。これは正確です。 –

0

これを試してみてください。

from bs4 import BeautifulSoup 
import requests 

html = requests.get('https://www.appearhere.co.uk/spaces/north-kensington-upcycling-store-and-cafe').content 

bsObj = BeautifulSoup(html, 'lxml') 

data = bsObj.findAll('p') 

for item in data: 
    print item.get_text() 

希望これは

+0

Pycharm環境でpythonを使用していて、実際にlxmlを認識しません。それは私にこのようなエラーを投げます、**あなたが要求した機能を持つツリービルダを見つけることができませんでした:lxml。 ?**あなたはパーサライブラリをインストールする必要がありますし、また、私はそれが私にこのような出力が得られないだろうと思い、** SQFT - 1200平方フィート、小売 - いいえ、バーやレストラン - いいえ、イベント - はい、店のシェア - いいえ、ユニークな - あなたはピップ試しを使用してパッケージをインストールすることができません** –

+1

場合:lxmlのインストール –

関連する問題