0

私の質問は、主に 2 つの部分で構成されています。すべての役立つ回答に感謝します。プログラミングに関しては、私はまったくの初心者です。したがって、私は「全体像」を見逃しています。Amazon での調査を容易にするために、製品詳細ページからギャラリー ビュー ページ (検索クエリが行われた後に表示されるページ) に情報を取得すると便利です。あなたの意見では、これを行うための最良の方法は何ですか (最初の部分)?

とにかく、私は JavaScript を知っており、ブラウザー (Firefox 46) で調査を行っているため、Greasemonkey を XmlHttpRequest と組み合わせて使用​​することにしました。もっと良い方法があれば教えてください。ソース コードからデータを取得しましたが、(同じドメイン内の) 他のページからデータを取得することになると、本当に行き詰まります。

コードの最初の部分は詳細ページへのリンクを引き出しますが、これをできるだけ短くするために省略しました。これが私がこれまでに持っているものです:

//This is an example-URL
var link = https://www.amazon.de/Emsa-513359-Isolierbecher-genie%C3%9Fen-Verschluss/dp/B008TLGFVU

function GetData() {
var xhr;  
xhr = new XMLHttpRequest(); 
}

//Handle Response from Server;
xhr.onreadystatechange = function () {
if (xhr.readyState < 4) {
    //Specify something }
    else {
    if (xhr.readyState === 4) {
    if (xhr.status == 200 && xhr.status < 300) {
    //This is the string / part of the product detail page, that I am interested in 
    document.getElementsByClassName('date-first-available')[0].getElementsByClassName('value')[0].innerHTML = xhr.responseText;

    //This grabs the title in the gallery view page and replaces it with the pulled informaton (string)
    var title = window.document.getElementsByClassName('s-result-item celwidget')[0].getElementsByTagName('h2')[0];
    title.innerHTML = <span style='font-weight:bold" + "'>" + xhr.responseText + "</span>"; 
    }}
}}

//Specify action, location and Send to the server   
xhr.open('GET', link, true);
xhr.send(); 

その商品タイトルの部分がごちゃごちゃしているのはわかっていますが、これはすぐに変更します。また、「なぜこれが機能しないのか」ということも知っています。質問は面倒ですが、実際にいくつかのヒントを使用できます。ここでは XMLHttpRequest が機能する戦略のように見えますが、よくわかりません。そのように、ターゲット ページでターゲット要素を指定することさえできますか?

よろしくお願いします!

4

0 に答える 0