1.0.0 • Published 6 years ago

the-fool v1.0.0

Weekly downloads
2
License
MIT
Repository
github
Last release
6 years ago

The Fool

The Foolは、jsonを渡すとスクレイピングしてきてくれます。

Breaking changes

v1.0.0

  • Nightmare.jsは外から注入して使うようになりました!

スクレイピング

サイト内の情報を取得します。

用意するjson

{
  "data": [
    ["goto", "https://www.google.co.jp/"],
    ["type", "form[action='/search']", "fool"],
    ["click", "form[action*='/search'] [type=submit]"],
    ["wait", "._NId h3 a"],
    ["snatch", "._NId h3 a", "innerText"]
  ]
}

サンプルコード

import Nightmare from 'nightmare';

const data = {
  data: [
    ["goto", "https://www.google.co.jp/"],
    ["type", "form[action='/search']", "fool"],
    ["click", "form[action*='/search'] [type=submit]"],
    ["wait", "._NId h3 a"],
    ["snatch", "._NId h3 a", "innerText"]
  ]
};

const fool = new Fool(Nightmare({ show: true }));

fool.travel(data)
  .then(result => {
    console.log(result);
  });

/**
* CONSOLE
*
[ [ 'foolの意味 - 英和辞典 Weblio辞書',
    'FOOLの番長ブログ - アメーバブログ',
    'foolの意味・用例|英辞郎 on the WEB:アルク',
    'foolの意味 - goo辞書 英和和英',
    'FooL',
    'FOOLとは (フールとは) [単語記事] - ニコニコ大百科',
    'フール(FOOL)|ホットペッパービューティー',
    'FOOL THE PUBLIC OFFICIAL WEB SITE - Jimdo',
    'Shaqtin\' A Fool - NBA.com',
    'Fool.com: Stock Investing Advice | Stock Research' ] ]
*/

その他の操作について

nightmare.jsを使用しています。下記は主なコマンドです。 Intaract with the pageの詳細は、nightmareをご参照ください。

https://github.com/segmentio/nightmare/blob/master/Readme.md#interact-with-the-page

概要intaract with the pagejson.dataの例
WEBページを開くgoto"goto", "https://www.google.co.jp/"
テキストボックスに入力type["type", "formaction='/search'", "fool"]
セレクターで指定された要素の表示を待つwait"wait", "._NId h3 a"
セレクターで指定された要素をクリックするclick["click", "formaction*='/search'"]
セレクターで指定された単一の要素のpropertyを取得するscrape"scrape", "._NId h3 a", "innerText"
セレクターで指定された要素のpropertyを配列で取得するsnatch"snatch", "._NId h3 a", "innerText"

ゼロを知れ!いずれの遣り方も、無知であれば許される。 - アレイスター・クロウリー 『トートの書』(国書刊行会、1991年)

1.0.0

6 years ago

0.0.8

7 years ago

0.0.7

7 years ago

0.0.6

7 years ago

0.0.5

7 years ago

0.0.4

7 years ago

0.0.3

7 years ago

0.0.2

7 years ago

0.0.1

7 years ago