2017-08-05 13 views
1

でdivタグの内側のHTMLのプロパティを取得するには、WebサイトがそれにインナーHTML組み込まれていますかbeautifulsoup

美しいスープが埋め込まHTMLコードを抽出されていません。

Iは、例えばためのクラス= qwjRop

とDIV要素を抽出する必要があります「この価格で良い」フォームのdivタグを抽出することができません

import requests 
from bs4 import BeautifulSoup 

url="https://www.flipkart.com/hp-pentium-quad-core-4-gb-1-tb-hdd-dos-15-be010tu-notebook/product-reviews/itmeprzhy4hs4akv?page1&pid=COMEPRZBAPXN2SNF" 


def clawler(in_url): 
    source_code = requests.get(in_url) 
    plain_text = source_code.text 
    soup = BeautifulSoup(plain_text, "html.parser")  

    for name in soup.findAll('div',{'class':'qwjRop'}): 
     print(name.prettify()) 
+0

に私の答えを参照してください、あなたは私たちにあなたが問題の解析を抱えているHTMLのサンプルを与えることができますか? 「埋め込みHTMLコード」とは、具体的にはどういう意味ですか? iframeを意味しますか? – geekonaut

+0

完全なコードを親切に編集しました。 –

答えて

1

ページは、あなたがそれをレンダリングするためにセレンを使用することができますJavaScriptでレンダリングされます。そして、

sudo pip3 install selenium 

まずセレンをインストールドライバーを入手するhttps://sites.google.com/a/chromium.org/chromedriver/downloadsあなたは、WindowsまたはMac上にいる場合は、クロム「Chrome Canary」のヘッドレス版を使用することができます。

import bs4 as bs 
from selenium import webdriver 
browser = webdriver.Chrome() 
url="https://www.flipkart.com/hp-pentium-quad-core-4-gb-1-tb-hdd-dos-15-be010tu-notebook/product-reviews/itmeprzhy4hs4akv?page1&pid=COMEPRZBAPXN2SNF" 
browser.get(url) 
html_source = browser.page_source 
browser.quit() 
soup = bs.BeautifulSoup(html_source, "html.parser") 
for name in soup.findAll('div',{'class':'qwjRop'}): 
    print(name.prettify()) 

または他の非セレン方法についてScraping Google Finance (BeautifulSoup)

+0

この問題を解決するために朝から頭を傷つけていただきありがとうございます。 –