2017-04-25 20 views
0

さまざまなレビューウェブサイトから特定のコンテンツ(レビュー情報)を抽出したいと考えています。複数のWebページからコンテンツを抽出する方法は?

まずは私は1つのWebページだけでコンテンツを抽出し始めました。私は何の問題もなく達成することができました。私は同じ目的を達成するためにPythonコードを書いています。しかし、私はどのように私は複数のWebサイトから抽出するために同じPythonモジュールを使用することができますか分からない。

私は当初、ウェブサイトのための審査を抽出するための以下のコードを使用:「HTML」ここ

from webscraping import download, xpath 
D = download.Download() 
# download and cache the Google Code webpage 
html = D.get('http://code.google.com/p/webscraping') 
# use xpath to extract the project title 
project_title = xpath.get(html, '//div[@id="pname"]/a/span') 

をWebページのHTMLコンテンツを含む変数です。

このソリューションをより包括的に拡張して、どのウェブサイトからもレビューを抽出できるようにしたいと考えています。

これをどのように達成できますか?

ご注意:私はウェブスクレーピングツールを使用したくありません。しかし、私はプログラムでPythonを使用して同じことを達成したい。

ありがとうございます。

+0

あなたはおそらく、おそらく 'xpaths'がHTMLをスクレイピングし、解析するための優れている –

+0

@AzatIbrakov [BeautifulSoup](https://www.crummy.com/software/BeautifulSoup/bs4/doc/)を見てみる必要がありますページ – anekix

+0

私はここで何が問題なのか不明です。別のWebサイトからデータを取得したい場合は、別のWebサイトのコンテンツを要求し、そこからデータを抽出するだけです。 1つのスクリプトで要求できるウェブサイトの数に制限はありません。あるセレクタを使用してすべての可能なウェブサイトから関連するデータを検索する場合、これは妄想的な要求です。すべてのウェブサイトには独自のマークアップがあり、すべてのウェブサイトには一般化されたソリューションは存在しません。 –

答えて

0

このようなことは、仕事を完了させるはずです。

from bs4 import BeautifulSoup 
import urllib.request 

for numb in ('1', '10'): 
    resp = urllib.request.urlopen("https://realfood.tesco.com/search.html?DietaryOption=Vegetarian") 
    soup = BeautifulSoup(resp, from_encoding=resp.info().get_param('charset')) 

    for link in soup.find_all('a', href=True): 
     print(link['href']) 
関連する問題