0

URL のリストがあり、それぞれの Web ページのロケーション オブジェクトをスクレイピングしたいと考えています。私が参照しているデータは、ブラウザのコンソールに「window.location」と入力することによって生成されます。たとえば、Chrome を使用して www.github.com でこのアクションを実行すると、次のような出力が得られます。

Location {assign: 関数, replace: 関数, reload: 関数,祖先Origins: DOMStringList, origin: " https://github.com "…}

展開すると、詳細情報が表示されます。

Location {
    ancestorOrigins: DOMStringList 
    assign: function () { [native code] } 
    hash: "" 
    host: "github.com" 
    hostname: "github.com" 
    href: "https://github.com/" 
    origin: "https://github.com" 
    pathname: "/" 
    port: "" 
    protocol: "https:" 
    reload: function () { [native code] } 
    replace: function () { [native code] } 
    search: "" 
    toString: function toString() { [native code] } 
    valueOf: function valueOf() { [native code] } 
    __proto__: Location  
}

過去にスクレイピングに Python と Mechanize ライブラリを使用したことがありますが、今までこの機能を望んだことがなく、どうすればよいかわかりません。どんな提案も歓迎します。

4

1 に答える 1

1

私の知る限り、目的の Web ページで JavaScript 呼び出しを実行したいと考えています。私の提案は、いくつかのヘッドレス ブラウザを使用することです。私はPyQt4と呼ばれるフレームワークで同様のことをしました。PhantomJS などの他のヘッドレス Web ブラウザーを使用することもできます。または、Selenium というツールにも興味があるかもしれません。

于 2013-06-25T00:33:16.517 に答える