1

私は Cheerio をいじっていましたが、jquery リファレンスで指定された特定のセレクター、特に「:odd」と「:even」をサポートしていないようです。jquery パッケージをプログラムにインポートしてこれらを使用する方法はありますか? それとも、cheerio コードに実装する必要があるものですか?

これが私のコードです:

//var request = require('request');
var cheerio = require('cheerio');
var jquery = require('./jquery-1.10.2');

var fs = require('fs');

    $ = cheerio.load(fs.readFileSync('c:/java/bushkill_mls.html'));

    var odds = [];
    var evens = [];

    $('tr:odd').each(function() {
        odds = odds.concat($(this).text());

        });
        console.log(odds);

jqueryをインポートしようとしたことがわかりますが、「ウィンドウが定義されていません」というエラーが発生せずにインポートできなかったので、明らかにノードの互換性の問題のようです。では、cheerio のセレクター ライブラリを増やす方法や、必要な jquery セレクター関数を持つ別のモジュールをインポートする方法はありますか?

4

2 に答える 2

0

あなたの質問の他の部分に答えるには:

必要なjqueryセレクター機能を持つ別のモジュールをインポートしますか?

Cheerioでできないことは、jsdomでできます。完全な DOM を実装し、jQuery やその他のライブラリを挿入できるようにします。

欠点として、コードの速度が低下し、より多くのメモリが必要になるため、他に代替手段がない場合にのみ使用することをお勧めします。たとえば、単純な html 解析よりも多くのことを行う必要がある場合です。

于 2014-07-16T15:23:58.293 に答える