cheerio-httpcli - Node.js用WEBスクレイピングモジュール Node.jsでWEBページのスクレイピングを行う際に必要となる文字コードの変換と、cheerioによってパースしたHTMLをjQueryのように操作できるHTTPクライアントモジュールです。 特徴 取得先WEBページの文字コードを自動で判定してHTMLをUTF-8に変換 UTF-8に変換したHTMLをjQueryのように操作可能 フォームの送信やリンクのクリックをエミュレート フォーム送信時のファイルアップロード対応 Node.jsお馴染みのコールバック形式と最近の流行であるプロミス形式どちらにも対応 同期リクエスト対応 $('a')要素のリンク先をファイルとしてダウンロード可能 $('img')要素画像をファイルとしてダウンロード可能(LazyLoad対応) $('a,img,script,link')
MEANのロゴ。各ソフトウェアの頭文字を組み合わせている。 MEAN は、ウェブアプリケーション構築のためのフリー&オープンソースのJavaScriptソフトウェア群を指す造語である[1]。2013年にMongoDBの開発者のValeri Karpovにより提唱された用語であり、MongoDB, Express, AngularJS, Node.jsの4つのアプリケーションの頭文字を取って名付けられた。 概要[編集] MEANを採用すると、サーバサイドからクライアントサイドまでの全ての実装作業がJavaScriptとJSONのみで完結できる。従って、Webアプリにおける内部処理の全工程を単一の言語で記述でき、データベースの入出力におけるデータ変換も行う必要がない。また、サーバの役割を果たすNode.jsが、シングルスレッド、ノンブロッキングI/Oにより、省メモリかつ高速で動作する。従って、
はじめに 最近サーバとクライアントを同じ言語にしてみたよ、っていう話を良く聞きます。その理由として「モデルの共用ができる」というメリットが挙がります。これに関して、いやそれ違うだろ、って前から思っていて、もやもやしているので書きます。 本当はQiitaで書きたかったのですが、どう考えてもポエムなのでHatenaBlogにしておきます。 軽い背景解説 「はじめに」が大筋理解できていれば読む必要が無いと思いますが、そうでない人もいると思うので解説します。 所謂Webの世界ではサーバ側とクライアント側で厳密に分けられることが多くなっており、ソシャゲだったら運営側のAPIサーバとスマホアプリ(クライアント)という感じで分けられています。ゲームに必要なデータはAPIサーバから取ってきて、スマホアプリは動きとか絵を管理している感じですね。普通のWebサイトでも単純なAPIサーバからデータを取得してJa
久しぶりにJavaScriptを勉強しようと思ったら、すっかり浦島太郎状態だった……なんて人も多いのでは? モダンなJavaScriptの知識をコンパクトにまとめました。 JavaScriptを取り巻く環境がどんどん変化しています。新たなツールやフレームワークが生み出されているだけでなく、言語そのものがES2015(ES6)の登場で大きく変わりました。JavaScript開発の学習がいかに難しいか愚痴をこぼす記事がたくさんありますが、無理もないことです。 本記事ではモダンJavaScriptを紹介します。JavaScriptの進展を解説し、フロントエンドWebアプリケーションを作るために使われているツールや手法の全体像を確認します。JavaScriptを学び始めたばかりの人や、以前は使っていて数年間離れたため変化を知りたい人はぜひ読んでください。 Node.jsについて Node.jsは
npm、一見無意味なパッケージを消したら1000件ものパッケージが依存するパッケージであったことが判明 npmが一見無意味に思えるfsというパッケージをSPAMとみなして削除したところ、1000件ほどのパッケージが依存するパッケージだったので、削除を取り消した。 npm, Inc. Status - "fs" unpublished and restored 今日、数分ほど、"fs"というパッケージが、ユーザーからSPAMであるという報告を受けて、レジストリから非公開にされた。これは現在復旧されている。これは私(@seldo)による人為的なミスである。私は非公開が安全であるかを確認する内部のガイドラインに従っていなかった。ビルドが阻害されたユーザーに謝罪する。 詳細:"fs"というパッケージは、無意味なパッケージである。これは単に"I am fs"をログに残して終了する。このパッケージが何
(最終更新:3月24日16:50ごろ) 事件の流れ kik の作者が同名の会社 KIK の弁護士特許出願代理人からパッケージ名を変更するよう要請される 作者が拒否したところ弁護士代理人は npm の運営にコンタクトする 運営が作者の許可なくパッケージを unpublish するパッケージの所有権を移し替える 作者がこれに反発し自身が所有する270あまりのパッケージをすべて unpublish する I’ve Just Liberated My Modules — Medium unpublish されたパッケージは npmjs.com からダウンロードできなくなる unpublish されたうちのひとつである left-pad に間接的に依存したパッケージが多数あったため世界中でビルドがぶっ壊れる npmjs.org tells me that left-pad is not availa
node.js アプリケーションのデプロイをする時の選択肢が あまりにもありすぎて、結局どうすればいいのよ?ってなったので、 いったん基礎からまとめてみます。 デプロイとは何か? アプリケーションのデプロイは大きく2つのフェーズに分かれます。 ファイルを所定の場所に置く 置かれたファイルの再ローディング 文章にするならば『ファイルを各サーバーの所定の場所におき、それらのファイルを再度ロードをする。』になると思います。 Webアプリケーションの場合 ファイルを所定の場所に置く前にテストを走らせたり 置いた後に静的ファイルを生成したりと、この2つの前後にはもっと色々なフェーズがありますが、 デプロイのタスクは、大きく分けてこの2つになります。 ファイルを所定の場所に置く サーバーにファイルを置く作業は、以下のような方法があります。 FTP tar などで圧縮scpで転送して解凍 rsync g
背景 Javascript で Web アプリを作ろうとすると、よくわからないことだらけで超混乱します。 npm と bower の違いは? npm はサーバーサイド用、bower はクライアントサイド用らしいよ えっ、でもなんで bower のインストールに npm が必要なの? サーバーサイドは Rails で書きたいから npm 要らないと思うんだけど・・・ ていうかサーバーサイドJSとか node.js って何? よく見る browserify って何? こういった疑問が沸き上がるのは、各ツールが生まれた文脈がよくわかっていないからです。いろいろ調べてやっとちょっとわかってきたのでメモします。間違いがあったらご指摘ください。 「CommonJS」誕生 - Javascript は汎用プログラミング言語へ その昔、Javascript 大好きおじさんは言いました。 Javascrip
スライド 当記事は以前勉強会でLTしたものです。 スライドは下記にあります。 フロントエンド覚えること多すぎ問題 モダンなフロントエンド開発で、入門記事を探そうとすると、 まずwebpackやTypeScript, Babelによるビルド環境構築から始まる記事が多くヒットします。 ですが、Node.jsの初心者がいきなり複数のツールを習得しようとすることが 挫折の原因になっていると感じています。 ですので、まずNode.jsをインストールした直後から、必ず使うことになる、 npmの機能をまず覚えておきましょう。 フロントエンド開発で覚えるべき3つのコマンド 以下の3つだけ覚えておきましょう。 npm init npm install npm run これだけ覚えれば、ひとまずフロントエンド開発を進めることができます。 完璧なワークフローを構築するのは、書いているアプリが大きくなってきてから
こんにちは。 3.14から始まる円周率はどこまでも続く男のロマン・・・そんな風に考えていた時期が、ワイにもありました。 「円周率が10桁で割り切れた」とかいう嘘記事が虚構新聞から出回ったりしたこともありました。 しかしさっきプログラムを作っていろいろ計算していたところ、円周率が割り切れてしまったので報告させてください。 そもそもは、円周率を分数で表現する手法を最近知り興味を持ったのがきっかけです。例えば とかです。7分の22が円周率のそこそこの近似値(3桁まで正しい)になっています。 次に有名なのが、 らしいです。この113分の355はなんと7桁まで正しい近似になってます。3桁の整数2つ覚えるだけで、円周率7桁分の精度が得られるとは何ともお得な数です。 ここで疑問が湧きました。 この調子で分母の整数値を上げていったらどうなるのだろうか・・・? 本来数学でのやりかただと、ここで「連分数」など
2018年4月25日をもちまして、 『CodeIQ』のプログラミング腕試しサービス、年収確約スカウトサービスは、 ITエンジニアのための年収確約スカウトサービス『moffers by CodeIQ』https://moffers.jp/ へ一本化いたしました。 これまで多くのITエンジニアの方に『CodeIQ』をご利用いただきまして、 改めて心より深く御礼申し上げます。 また、エンジニアのためのWebマガジン「CodeIQ MAGAZINE」は、 リクナビNEXTジャーナル( https://next.rikunabi.com/journal/ )に一部の記事の移行を予定しております。 今後は『moffers by CodeIQ』にて、 ITエンジニアの皆様のより良い転職をサポートするために、より一層努めてまいりますので、 引き続きご愛顧のほど何卒よろしくお願い申し上げます。 また、Cod
7 principles for rich web apps And how next.js achieves these principles
HTML5 Canvasのフレームワーク「CreateJS」(基本的な使い方は入門サイトをご覧ください)について、2015年2月10日に開催されたCreateJS勉強会 (第5回) でライトニングトーク「CreateJSとNode.jsを使ってサーバーでCanvas要素を使おう」を発表しました。今回はそのスライドを元に、サーバーサイドでCreateJSを使うメリットを紹介します。 デモ 今回紹介するnode-easelを使ったデモです。スマホ画面にTwitterのアイコンが、PC画面には白い矩形が表示されています。スマホで選んだTwitterのユーザーのアイコンがPC側でアニメーションします。画像加工はサーバーサイドで動くCreateJSを使って行われています。 Section1. Node.jsとモジュールについて Node.jsはブラウザではなくサーバーサイドで動くJavaScript
npmの基本的な使い方のまとめです。忘れたときに見返す用。 npmのインストールから、モジュールを取ってきて使うところまで。 環境は、CentOS7です。 インストール node.jsをインストールすると、一緒に入ります。 ここを参考にソースからインストールしました。 $ sudo yum groupinstall 'Development tools' $ wget http://nodejs.org/dist/v0.12.0/node-v0.12.0.tar.gz $ tar xvf node-v0.12.0.tar.gz $ cd node-v0.12.0/ $ ./configure --prefix=/usr/local $ make $ sudo make installバージョンを確認。 $ node -v v0.12.0 $ npm -v 2.5.1 モジュールのインストー
本稿では、Node.jsの特徴や動作原理に触れ、サンプルや役に立つパッケージ、活用事例などを紹介したいと思います。 主なサーバサイドJavaScript Node.jsに触れる前に、予備知識として他のサーバサイドJavaScriptにも触れておきます。Node.js含め、サーバサイドJavaScriptには、主に以下のようなプロジェクトがあります。 サーバサイドJavaScripの標準仕様「CommonJS」とは サーバサイドJavaScriptには、「CommonJS」と呼ばれる標準化が策定されています。標準化というと難しい感じがしますが、要はサーバサイドでJavaScriptを実行するのに何が必要かを仕様として、定義しているドキュメントのことです(例えば、「ログが必要だよね」など)。 Node.jsは、このCommonJSに則って開発されています。現段階であれば、CommonJSの仕様
ブラウザによりJavascriptのエンジンが違うのが挙動の違いの原因 主なJavaScriptエンジンには,IEのJScript,FirefoxのSpiderMonkey(TraceMonkey),SafariのJavaScriptCore(Nitro),ChromeのV8,OperaのFutharkやCharakanなどがあります。これらの実装の違いが多くの開発者の悩みの種となっています。 c https://sites.google.com/site/shidoinfo/Home/programing-lang/%E9%96%A2%E6%95%B0%E5%9E%8B%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E/ecmascript/javascript-enjin エ
Source Code: lib/http.js To use the HTTP server and client one must require('node:http'). The HTTP interfaces in Node.js are designed to support many features of the protocol which have been traditionally difficult to use. In particular, large, possibly chunk-encoded, messages. The interface is careful to never buffer entire requests or responses, so the user is able to stream data. HTTP message h
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く