問題タブ [domxpath]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - DOM または XPATH を介して各要素の属性の幅と高さを取得します
各要素の属性の幅と高さを取得するにはどうすればよいですか?
例えば、
結果、
しかし、これらは私が求めているものです。
div
クラス名がitem
onlyの を選択します。295
(幅) と210
(高さ) のみを取得します。
DOMで可能ですか?またはXPATH?
編集:
クラス名でdivを選択することはできたようですが、
今、これは私が求めているものです。
295
(幅) と210
(高さ)を取得します。
php - 長いコマンド ライン プロセス中に DOMDocument / Xpath でメモリ リークが発生する - このクラスを分解する方法
XPath を使用して HTML を分析するコマンド ライン php スクレイピング アプリを構築しました。問題は、新しい DOMXPath クラス インスタンスがループで読み込まれるたびに、読み込まれる XML のサイズとほぼ同じメモリ損失が発生することです。 . スクリプトが実行され、実行され、制限に達して終了するまでメモリ使用量がゆっくりと増加します。
でガベージ コレクションを強制しようとしましたがgc_collect_cycles()
、PHP はまだ古い Xpath 要求からメモリを取得していません。実際、DOMXPath クラスの定義には、デストラクタ関数さえ含まれていないように見えますか?
So my question is ... is there any way to force garbage clean up on DOMXPath
after I've already extracted the necessary data? Using unset on the class instance predictably does nothing.
The code is nothing special, just standard Xpath stuff:
As you can see above I've kept the instantiation of a new DOMDocument
class outside of the loop, although that doesn't seem to improve performance. I've even tried taking the $xpath
class instance out of the loop and loading the DOM into Xpath directly using the __constructor
method, memory loss is the same.
php - このURLに関連付けられたXMLファイルを取得するためのCURL
CURLを使用してこのURLに関連付けられたXMLファイルを取得しようとしています。次に、DOMxPathを使用してxmlファイルを解析しようとしています。
この時点では出力エラーはありません。何も表示されていません。いくつかのエラーをキャッチしようとしましたが、理解できませんでした。どの方向でも素晴らしいでしょう。
c# - Web スクレイピングのために C# で DOMXPath を使用する方法
PHP のように C# で DOMXPath を Web スクレイピングに使用する方法はありますか? または、同じことを行う別の方法はありますか?
php - PHPを使用したDOMXPathユニオン抽出
私は取得しようとしimg
ていますが、それを含むdiv
の後に続くものをすべて1つのクエリで取得しようとしています。だから私はこれをしました:div
img
これで、タグの属性を取得できましたimg
が、次の兄弟のテキストを取得できません。クエリを分離すると(2つのクエリ-最初img
は兄弟用、2番目は兄弟用)動作します。しかし、1つのクエリだけでこれを行うにはどうすればよいですか?ちなみに、構文に誤りはありません。しかし、どういうわけか、ユニオンが機能しないか、兄弟コンテンツを正しく抽出していない可能性があります。
これがマークアップです(別のテキストで何度も繰り返されますid="someid_%randomNumber%
)
link_to_image.pngと...重要なテキストの両方を1つのクエリで取得したい...
php - xpath: xpath を使用してノードからデータを抽出します
売上ランク(この場合は5)だけを抽出したい
この商品を購入した、Amazonコミュニティーのメンバーである出品者、メーカー、または カスタマーが質問にお答えします。
Web ページから : http://www.amazon.com/Mockingjay-Hunger-Games-Book-3/dp/0439023513/ref=tmm_hrd_title_0
これまでのところ、「Amazon ベストセラー ランク:」を選択すると、次のようになります。
私はPHPDOMDocument
とDOMXPath
.
php - phpDOMXpathエンコーディング
Webページからいくつかのデータを取得する必要があります。しかし、私はそれにいくつかのエンコーディングの問題があります。
これは、よく知られているドイツのWebページで問題を示すためのほんの少しのサンプルコードです。
私はこのテキストをウェブページから取得することを期待していました:
Alle Kritiker werden gespannt nach Wolfsburg schauen、dennderVfLwurdekräftigumgekrempelt。KönnendieKölnerdarausihrenNutzenziehen?
しかし、私のテストでわかるように、私はこれを取得します:
Alle Kritiker werden gespannt nach Wolfsburg schauen、dennderVfLwurdekräftigumgekrempelt。KönnendieKölnerdarausihrenNutzenziehen?
このページのメタタグは、UTF-8でエンコードされていることを示しています...
また、mb_detect_encodingは、UTF-8であることも示しています。
しかし、なぜ私はこのくだらないテキストを取り戻すのですか?
そして、テキストをISO-8859-1に変換すると、期待どおりの結果が得られます...
php - この XPath クエリで「トップ ノード」のみを選択するにはどうすればよいですか?
この XPath クエリを使用して、Xhtml ドキュメントに入力子孫を持たない要素を選択しています。
次の XHtml ドキュメントの例を使用します。
...そしてこのPHPコード:
私はこれを得る:head title div#three div#four div#seven div#eight
しかし、代わりにこれが欲しい:head div#three div#seven
XPath クエリの結果を取得し、DOMDocument から要素を削除します。title div#four div#eight
は の子でhead div#three div#seven
、既に結果に含まれています。
このクエリは任意の XHtml ドキュメントで使用されることに注意してください。目的の結果を得るには、XPath 1.0 クエリをどのように変更すればよいでしょうか?
php - PHP、CURL を使用して JavaScript サイトをスクレイピングする方法
重複の可能性:
PHP アプリケーション内で別のサイトから JavaScript をレンダリングするにはどうすればよいですか?
これはサイトhttp://www.oferta.pl/strona_v2/gazeta_v2/です。このサイトは完全に JavaScript で構築されています。PHPとcurlを使ってスクレイピングしたい。現在、DOMXPath を使用しています。左側のメニューには、選択するカテゴリがいくつかあります。そこには「形」が見えません。curl を使用してそのフォームを送信し、出力ページを破棄するにはどうすればよいですか?
私は file_get_contents() のみを使用しました。すべてのページを取得するわけではありません。どうすれば続行できますか?
NB : http://www.html-form-guide.com/php-form/php-form-submit.html「フォーム」を持つこの例を見つけました。しかし、指定したサイトには「フォーム」がありません。
php - Xpathを使用して要素を抽出する
Xpathを使用して、この要素から「#purchase=9780345527721」を抽出する必要があります
これは私が今までやったことです:
$ nodelist_nook = Trim($ xpath_nook-> query( "// a [@ class ='buy-as-gift-link']")-> item(0)-> nodeValue);