これは、私が使用しようとしている現在のXPathです。動的なxpathのために要素を見つけることができません
//*[@id="highcharts-33"]/svg/g[3]/g[1]/text
問題は、それが「highcharts-33」、「highcharts-34」などのように書きますので...私は、チェックボックスをクリックすることで、論文のグラフのスクリーンショットを作ってるんだ、これはダイナミックのXpathであるということです。チェックボックスをオンまたはオフにするたびに、次のグラフのIDは異なります。ここで
は私がCMDに取得していますエラーです:
はNoSuchElementException:メッセージ:要素が見つかりません:{ "メソッド": "のxpath"、 "セレクタ": "// *は、[含まれています(@ id、 'highcharts - ')]/svg/g [3]/g [1]/text "}
「contains」を使用しようとしています。私も "starts-with"を使用しようとしましたが、まだグラフを見つけることができません。
は、ここで私が試したものです:
textvote = self.driver.find_element_by_xpath("//*[contains(@id,'highcharts-')]/svg/g[3]/g[1]/text").text
textvote = self.driver.find_element_by_xpath("//*[starts-with(@id,'highcharts-')]/svg/g[3]/g[1]/text").text
私は、スタックオーバーフロー上で検索し、その上にいくつかのトピックを見て、それは常に起動し-でた/が含まれているか、未回答のトピック。だから私は、開始を使用することがあります/間違って含まれています。
もっとコードを共有したい場合は、躊躇しないでください。 ありがとうございます。
編集:追加私はその最後の行からテキストを抽出しようとしている
<div id="chartListContainer">
<div id="chart0" class="gauge-chart" data-highcharts-chart="16"><div class="highcharts-container" id="highcharts-33"
<div class="highcharts-container" id="highcharts-33"
<svg version="1.1"
<g class="highcharts-data-labels highcharts-tracker"
<g zIndex="1"
<text x="0" zIndex="1" style="font-size:30px;font-family:Open Sans;color:#1abb1a;fill:#1abb1a;" y="32"><tspan>80.0% (4 votes)</tspan></text>
relevent HTML。
はrelevent HTMLを追加上記の1つまたは2つのレベルでも – Grasshopper
あなたのHTMLを共有する必要があります。 –
要素のhtmlを貼り付けてください。 – Dalvenjia