問題タブ [querypath]
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 - クエリパスと不正な HTML
ページの DOM を操作するために QueryPath を使用しています。操作しているページには、QueryPath が解釈できないタグがいくつか含まれています。
以下をオプションとして渡そうとしましたが、それでもエラーが発生します。
ignore_parser_warnings
use_parser (html)
これらを有効にすると、次のエラーが発生します。
Warning: DOMDocument::loadHTML() [domdocument.loadhtml]: Tag nobr invalid in Entity
Warning: DOMDocument::loadHTML() [domdocument.loadhtml]: htmlParseEntityRef: expecting ';' in Entity
どんな助けでも大歓迎です。
php - QueryPath を使用して任意の HTML 要素のコンテンツを取得する
PHP QueryPath ライブラリを使用して、古い HTML ファイルのコレクションからデータを抽出しています。ほとんどの場合、データを抽出するために find() 関数を介して利用できる CSS セレクターを使用しています。ただし、抽出する必要があるデータを含むすべての要素が一意の CSS 識別子を持っているわけではないため、Regexp と QueryPath の醜い組み合わせを使用してデータを抽出しています。
たとえば、このリスト要素から「Data2」をきれいに抽出するにはどうすればよいでしょうか? たとえば、取得する要素として親要素の 2 番目の子を指定できる QueryPath 関数はありますか?
php - PHP で QueryPath を使用して HTML 兄弟要素からテキストを取得する
PHP と QueryPath ライブラリを使用して、いくつかの古い HTML ファイルからデータを抽出しています。必要な要素に一意の css3 ID またはクラスがある場合、抽出は簡単ですが、常にそうとは限りません。次のタイプのデータを含むファイルがいくつかあります。
QueryPath を使用して、特定のテキスト文字列 ("Heading2" など) を含むクラス "1" の DIV を検索し、そのすぐ隣にあるクラス 2 の兄弟 div 内のテキストを取得したいと考えています。(この場合、「Data2」が取得されます)。
含まれているテキストに基づいて要素に移動できる組み込みの機能は QueryPath にありますか? もしそうなら、その要素を見つけたら、次の兄弟要素のコンテンツ テキストを取得するにはどうすればよいでしょうか?
php - jQuery と Zen-Coding php ポートを組み合わせて、サーバー側スクリプトでクライアント側プログラミング スタイルをエミュレートする
クライアント側のコードを書くときは、HTML/CSS/JavaScript と最近では jQuery を使用してコーディングを高速化し、改善された方法を使用して同じ目標を達成しています。
私のテキスト エディターでは、Zen コーディングを使用してコードの記述を高速化し、エラーを回避しています。しばらくの間、jQuery プラグインとしての zen-coding を検討していましたが、これには致命的な欠陥があり、javascript が起動する前に HTML を記述してクライアントにプレーンで送信する必要があります。
JavaScript サーバー (env.js または node.js) を使用できるため、JavaScript と jQuery を使用してサーバー側で多くの開発を行うことができますが、これは新しいテクノロジであり、多くの違いと欠点があるため (また、いくつかの大きな利点もあります)。
PHPサーバーサイドを使い続けたいと思っていますが、私が最も快適で、クライアントサイドのJavaScriptに精通している方法で開発しています。
したがって、私は、jQuery の最良かつ最も関連性の高い部分を取り、サーバー環境に合わせて再加工することを目的とした、jQuery の PHP ポートである QueryPath を調べてきました。
それはすべて素晴らしいことです。私は今、zen-coding を解析できる 2 つの PHP クラスを見てきました。これらを組み合わせると、優れたテンプレート エンジンとして機能し、コードのエラーも回避できます。
私が抱えている問題は、どちらの zen コーディング パーサーも zen コーディング機能の完全なセットに近いところをサポートしていないことです。
最後に私の質問です(かなり長いイントロで申し訳ありません)
- PHP コードで使用できる、より優れたサーバー側の Zen コーディング パーサーはありますか?
- 禅コーディングを使用するための優れた (非常に簡潔でフル機能の) 代替テンプレート システムはありますか? (もともとこのタスク用に設計されていないことは知っています)
- クライアント側とサーバー側のコーディング方法の違いを狭めるという最終的な目標を達成するために取るべきより良いアプローチはありますか?
- すべての内部動作を学習せずにコードのセキュリティ/パフォーマンスを向上させるユーティリティ関数の負荷を実装する PHP ライブラリはありますか? (jQueryがjavascriptに対して行うように)
注意: 構文上の類似性よりも機能的な同等性を探していますが、どちらも私にとってはプラスです。
これは、私が達成しようとしていることを明らかにするはずのコメント付きのテストコードです。
どんな助けでも大歓迎です
xml - クエリパスで問題のある XML を解析する (要素内のドット)
NewsML (http://www.iptc.org/std/NewsML-G2/2.7/examples/LISTING2_NewsML-G2_Complete.xml) ドキュメントを querypath で解析しようとしています。しかし、私はいくつかの要素のドットに問題があり<body.head>
ます.
一部の firefox querypath プラグインでは、バックスラッシュでドットをエスケープできますが、php pear ライブラリではこれが機能しません。
何か案は?
(回避策ではなく、クエリパス内の解決策を探しています)
javascript - QueryPath を使用して JavaScript を実行する
QueryPath を使用して HTML ファイルをスクレイピングしています。これらの HTML ファイル内には、HTML コメントで囲まれたいくつかの JS スクリプトがあります。JS は画面に表示されるテキスト コンテンツを生成するため、JS スクリプトを実行しないとテキスト コンテンツを見つける (スクレイピングする) ことはできません。
QueryPath を使用して JS スクリプトを実行することはできますか?
html - QueryPath を使用して HTML コメントを選択することは可能ですか?
これは jQuery を使用して可能であることがわかりますが、QueryPath でどのように行うことができますか?
そうでない場合、コメントを選択できる HTML パーサーを誰か提案できますか?
mysql - QPレイヤーとは何ですか?
blogs.innodb.comから:Binlog機能を備えたInnoDB Memcached
以前のLabsリリースでは、InnoDB Memcached Daemonプラグインを介してMySQLNoSQLソリューションを提示しました(以前のCalvinと私の投稿を参照)。その以前のリリースでは、MemcachedプラグインがInnoDBと直接対話し、MySQLオプティマイザーとを完全にバイパスできます
QP layers
。これは、別の一般的なMySQL NoSQLソリューションであるHandlerSocketとは異なり、Handler APIレイヤーもスキップし、InnoDBAPIを介してInnoDBに直接アクセスします。したがって、理論的には、より単純で効率的です。
何QP Layers
ですか?
検索しても良い結果は得られませんでした。私が一番近くに来たのはでしたQuery Path
。これは正しいですか?
php - foreach で QueryPath を使用して複数の検索を使用する
QueryPath と PHP を使用しています。
これにより、.eventdate は正常であることがわかりますが、.dtstart に対しては何も返されません。
2 つを交換すると、.dtstart は問題なく動作しますが、.eventdate は何も返しません。したがって、querypath の find() は要素を破棄し、必要な値のみを返し、$tr を反復処理して複数のアイテムを検索できないようです。
私が扱っているTRのHTMLの例を次に示します。
最初の検索の前に $tr をコピーして、2 番目の検索の前に置き換えようとしましたが、うまくいきませんでした。
各 $tr で特定の変数を検索するにはどうすればよいですか?
参考までに、.eventdate と .dtstart を超えてa
、対戦相手とa
アンカー テキストの下に .opponent、href も必要です。
querypath - iframeタグを自己終了に変更するQueryPath?
QueryPath を使用して、と埋め込み<div>
が混在するサイトの埋め込みビデオをラップしています。<object>
<iframe>
次のコードを試しました:
<iframe></iframe>
しかし、コードをに変更したいよう<iframe />
で、何らかの理由で混乱しています。ラッピングしているタグを変更しないようにする方法はありますか?
前もって感謝します!