2016-07-18 5 views
0

これがリピートであれば大変申し訳ありません。私はそれに何かを見ました、そして、私はそれを再び見つけることができませんでした。Node.jsとPythonを解析するためのHTML

は、他のエントリより具体的には、私が持っていると言う:

<h1>Hey, there.</h1> 

h1 { 
    color: green 
} 

私は「青」にそれを変更したいです。 PythonやNode.jsを使用して、より効率的に/より少ないコードで、より正確に/より短い時間でこれを行うことはできますか?

は、私が持っていると言う:

<h1>Hey, there1.</h1> 

は、簡単に変更することである "ねえ、there1を。" 「ねえ、そこに.2」 PythonまたはNode.jsを使用していますか?

はまた、私が持っていると言う:

<h1>Hey, there.</h1> and want to add <a> tags so that it is: 

<h1><a href="">Hey, there.</a></h1> 

それらは私が考えることができる3例です。私は、HTMLタグとコンテンツのブロックを別々に整理/コンテンツ/ CSSのHTMLに変換しようとしています。

現時点では、私はあまりPythonやJavascriptに慣れていないので、最初から間違ったパスをたどりたくないです。

私はまた、大量の検索/置き換えステートメントを実行することを考えていますが、それほどエレガントではありません。

ご協力いただきありがとうございます。

+1

あなたは間違った質問をしていると思います。タグの内容を変更することだけが心配な方は、PythonまたはJavaScriptのどちらかを選択することが重要だと思います。どちらを選んでも幸せになれます。データベースなどとの統合などの追加機能の実装を開始すると、言語の選択肢が増えます。あなたの*要件*があなたの*選択肢を導くようにしてください - それ以外の方法ではありません。 –

+1

彼らはどちらも間違ったパスではありませんが、最終的にウェブのjavascriptが必要になります – YOU

+0

あなたがよく知っている言語を選んでください。より多くのサポートを得ることができるもの(チームや何かで働いている場合)。 – player87

答えて

0

幸いなことに、Pythonとノードの両方には素晴らしいツールがあります。

しかし、あなたが始まったばかりなので、あなたが求めている質問は「これから何を学びたいのですか?

あなたの唯一の目標がスクレーパー/パーサーを作ることだけであれば、どちらかを選ぶことに意味はありません。あなたの長期目標と、最終的にあなたのスキルセットの形をしたいと思う方法について考えてみましょう。

講義を除いて、(私個人的に)それははるかに簡単なルートだと思っていますので、nodejsの方向で指摘します。また、他の人が言っているように、javascriptはウェブの言語なので、webdev /後で何かを掻き集めることは、とても役に立ちます。

ステップ1:nodeJS

は、私はあなたがすでに(https://nodejs.org/en/)は、このプロジェクトのための素晴らしい小さなフォルダを作る確信しているとして、ノードをインストールしたフォルダにcdし、これを実行します。

npm init

これは、ノードが作業する場所であることをノードに通知し、パッケージをインストールします(npmがこのディレクトリ内に呼び出されたとき)。

ステップ2:あなたはいくつかの素晴らしい機能を備えたHTMLパーサをインストールしたいと思うのパッケージ

、私はあなたにもjqueryののビットを学ぶのベストを取得しますので、チェリオ(https://github.com/cheeriojs/cheerio)をお勧めします

npm install --save cheerio

グレート、私たちは楽しいプロジェクトの開始を持っています!

ステップ3:あなたが好きなmain.js

名前それが、ない正しい答えはありません

let http = require('http'), 
    cheerio = require('cheerio'); 

// 
// from cheerio docs 
// 
let $ = cheerio.load('<h2 class="title">Hello world</h2>') 

$('h2.title').text('Hello there!') 
$('h2').addClass('welcome') 

$.html() 
//=> <h2 class="title welcome">Hello there!</h2> 

//console log some changes and see the change from Hello world to Hello there! 
console.log($.html()); 

で軌道に乗るために.jsファイルを作成することができます。

あなたの目標に合ったものを選んでください。

関連する問題