SE::Pinterest - Pinterest検索結果スクレイパー

スクレイパーの概要
Pinterest検索結果のスクレイパーです。SE::Pinterestスクレイパーを使用することで、画像リンクのデータベースや、そのまま利用可能な画像を取得できます。また、ドメインのデータベースや、その後のテキスト生成のためのテキストデータをスクレイピングすることも可能です。Pinterestの検索バーに入力するのと同様の形式でクエリを使用できます。
A-Parserのマルチスレッド動作により、クエリの処理速度は毎分4000クエリ以上に達し、平均して毎分約100,000件の結果を取得できます。

A-Parserの機能により、Pinterestスクレイパーの設定を将来の使用のために保存(プリセット)したり、スクレイピングのスケジュールを設定したりすることが可能です。自動クエリ増殖、ファイルからのサブクエリの挿入、英数字の組み合わせやリストの総当たりを使用して、可能な限り多くの結果を取得できます。
組み込みの強力なテンプレートエンジン Template Toolkit により、結果を必要な形式や構造で保存できます。これにより、結果に追加のロジックを適用し、JSON、SQL、CSVを含む様々なフォーマットでデータを出力できます。
スクレイパーの使用例
リンクによる画像ダウンロード
A-Parserではジョブのチェーンを使用できます。最初のジョブが完了すると2番目のジョブが開始され、最初のジョブからのリンクが2番目のジョブのクエリとして使用されます。
サンプルをダウンロード
eJyNVktT2zAQ/iuMJofQhsQcevGFCZRM6VCSQjiFdEbEa1cgS0aSQxiT/96V7PhV
J3Dzrval3W8/OSOG6mc9U6DBaOIvMpK4b+KTGRMGUDBHVzGN4Oi7fBVc0gAUGZCE
Kg3KeizI3aXvl8Z4FkBIU27IcjkgqMJPPZEqpjZoLzkdFhnKwzu6hrnEw5BxqNQT
lG5oDNYroAbs6TB0gfrHQ7OxEWgQMMOkoDzPYAuqst4L9pJaf20UExHao6gY6ImS
MaoNuCBW+barcEF6TiYYJnX+v3Mf4oeUaxgQjeVOKBYTtE8YtoAaqaaJrQn1GZFi
zPk1rIFXZi7+eco4tlKPQ3S6Khy7Tab/xdiWV6ynWoN6VVhDGcVJ59NflVcgr2WE
Nw8e8d6cxcygrC9kKuxwPFQ+AyRl324kamKpoExjVAplcoRNAiJAw2pq46RSNW7R
mExTuZIiZNEU61csgJ1lKuaIzam4kHHCwV6LOCDqJhJTDbcVYMa6GIoVynLboS5c
QtuHAqoDYqTk+uddXniiGOLxmy03xrbWayhau6Kc399eN6qr8OWwpc2DCKU0j2hK
rIeBSCKw7JI55PnkckOtt8Zj2CRUBBDkNW+X20HWWLIbML7/Yz6f1RYMTRREsMFI
2EIDwpyYtwT84ZczZjs16icien9K4Cx6j1h47KaE9nM0Qh9mF0gp+lZsme1CfrJK
tZFx3tZytKj/C9RNbacqAoWc1tbZ7pC9nrvCmnKHJCEFVPFxlY0bnnS4shsKQtcz
5ZuZ2xVZhDTwklJOtnViqUjCXVmP8vUdijQ+6WXFNxpsh5Z68rAd0BIp53s2ogvs
nTzyGZgdRKtXLaiQH7Jbmzb3QPLTuDvd7uFrJF/asc0Z0TJVK5smZ0y7RHb4tt1k
OSixOeov/oyWX48fHob9M78JyV4HJguQ5O62qPJJ6tr/Dt5p8bbXxWrlinfQuVdf
5DY3NOjQ28No7QfIjfOj58E7/DS0jxvPgrftIivvwOPWTbqHXhWv/qLYhG4GO+QU
ZFX+SmSt/wI/Q4+KxVBE+UnPcje7ADq3wYTakcLp9h+3SP7O
収集されるデータ
- ピンのタイトルと説明
- 画像へのリンク
- ソースのドメインとリンク
- ピンID
- 投稿者およびピンナーの名前とユーザー名
機能
- 最大100ページの検索結果をスクレイピング
- 必要なページ数の指定をサポート
ユースケース
- ブログ投稿用の画像収集
- テキスト生成のためのテキストデータ収集
- Pinterestのデータを利用するその他のあらゆる用途
クエリ
クエリとして検索フレーズを指定する必要があります。例:
Waterfall
Speak in english
Cats and dogs
cars
クエリ置換
クエリを増殖させるために組み込みマクロを使用できます。例えば、非常に大規模なフォーラムのデータベースを取得したい場合、いくつかの主要なクエリを異なる言語で指定します:
forum
フォーラム
foro
论坛
クエリ形式で a から zzzz までの文字の総当たりを指定します。このメソッドにより、検索結果を最大限にローテーションさせ、多くの新しいユニークな結果を得ることができます:
$query {az:a:zzzz}
このマクロは、元の各検索クエリに対して 475254 個の追加クエリを作成し、合計で 4 x 475254 = 1901016 個の検索クエリになります。驚異的な数字ですが、A-Parserにとっては全く問題ありません。毎分 2000 クエリの速度であれば、このタスクはわずか 16 時間で処理されます。
結果の出力例
A-Parserは組み込みのテンプレートエンジン Template Toolkit により、柔軟な結果フォーマットをサポートしています。これにより、任意の形式や、CSVやJSONなどの構造化された形式で結果を出力できます。
デフォルト出力
結果フォーマット:
$serp.format('$image\n')
結果の例:
https://i.pinimg.com/originals/dd/ba/c6/ddbac6d4813a82c55a658bf3afe8b90e.jpg
https://i.pinimg.com/originals/2e/73/f4/2e73f44e74756c79950772fca4fbea7d.jpg
https://i.pinimg.com/originals/49/4f/72/494f7289e47ac7988611dc7a191e0f89.jpg
https://i.pinimg.com/originals/43/bb/28/43bb28b987d916f543e128c9cdb3464f.jpg
https://i.pinimg.com/originals/0c/d8/6a/0cd86ab71aae1e16fef47fef803998ee.jpg
https://i.pinimg.com/originals/5c/76/d5/5c76d519525457d9807a37c07d140f22.jpg
https://i.pinimg.com/originals/45/64/66/456466acb284572575ce693a35bb75a3.jpg
https://i.pinimg.com/originals/ad/b9/34/adb934d8393b64177c7a0a4195648e4e.jpg
https://i.pinimg.com/originals/b6/ef/70/b6ef705f7f6635bf4e895ee5d114714b.jpg
https://i.pinimg.com/originals/7a/e5/9c/7ae59c58c87f28ffb4568f7b817852eb.jpg
https://i.pinimg.com/originals/57/0d/9a/570d9a47a72e75c9c5419da8ca7b9776.jpg
...
CSVテーブルへの出力
結果フォーマット:
[% FOREACH item IN serp;
tools.CSVline(query, item.link, item.pinner_username, item.title, item.id);
END %]
結果の例:
"Speak in english ",https://www.teflcourse.net/english-grammar-corner/great-ways-to-start-a-sentence/?r=Pinterest,,"Great Ways to Start a Sentence",289637819794664055
"Speak in english ",https://www.buzzfeed.com/maximilianzender/deutschlernen?sub=0_10833256#10833256,,"23 Fotos, die dich zur Weißglut bringen, wenn du gerade Deutsch lernst",84653667980063381
"Speak in english ",https://www.teflcourse.net/english-grammar-corner/great-ways-to-start-a-sentence/?r=Pinterest,,"Great Ways to Start a Sentence",307089268347214342
"Speak in english ",https://www.sprachheld.de/category/englisch-lernen/,,"Englisch lernen: W-Fragen!",13792342597188564
"Speak in english ",http://knowyourmeme.com/photos/1176258-pen-pineapple-apple-pen,,"Avengers - I have a pen spoof | ""Pen Pineapple Apple Pen""",609604499561518518
"Speak in english ",https://lehrermarktplatz.de/material/222137/picture-dictionary-word-banks-all-about-english-vocabulary-wachsendes-paket,,"Picture Dictionary: All about English Vocabulary + Word Banks! Englisch Wörterbuch/Vokabeln UK & USA",19210735900566228
"Speak in english ",https://lehrermarktplatz.de/material/180602/conversation-bubbles-english-for-beginners-bearbeitbare-sprechblasen?utm_medium=social&utm_source=pinterest&utm_campaign=tailwind_tribes&utm_content=tribes&utm_term=1144892530_56228916_845126,,"Beginner Conversation Bubbles | Tafelmaterial Englisch Unterricht Grundschule & Klasse 5",314477986488878805
"Speak in english ",https://mobile.twitter.com/AndereDeutsch/status/648719176048222208,,Twitter,1829656081959551
"Speak in english ",https://die-lernlotsen.com/englische-redewendungen/,,"Wow! Englische Redewendungen, die du immer anwenden kannst",82612974406076695
...
SQL形式での保存
結果フォーマット:
[% FOREACH serp;
"INSERT INTO serp VALUES('" _ query _ "', '";
link _ "', '";
image _ "', '";
pinner_username _ "')\n";
END %]
結果の例:
INSERT INTO serp VALUES('Speak in english ', 'https://www.teflcourse.net/english-grammar-corner/great-ways-to-start-a-sentence/?r=Pinterest', 'https://i.pinimg.com/originals/dd/ba/c6/ddbac6d4813a82c55a658bf3afe8b90e.jpg', '')
INSERT INTO serp VALUES('Speak in english ', 'https://www.buzzfeed.com/maximilianzender/deutschlernen?sub=0_10833256#10833256', 'https://i.pinimg.com/originals/2e/73/f4/2e73f44e74756c79950772fca4fbea7d.jpg', '')
INSERT INTO serp VALUES('Speak in english ', 'https://www.teflcourse.net/english-grammar-corner/great-ways-to-start-a-sentence/?r=Pinterest', 'https://i.pinimg.com/originals/49/4f/72/494f7289e47ac7988611dc7a191e0f89.jpg', 'TEFLcourse')
INSERT INTO serp VALUES('Speak in english ', 'https://www.sprachheld.de/category/englisch-lernen/', 'https://i.pinimg.com/originals/43/bb/28/43bb28b987d916f543e128c9cdb3464f.jpg', 'sprachheld')
INSERT INTO serp VALUES('Speak in english ', 'http://knowyourmeme.com/photos/1176258-pen-pineapple-apple-pen', 'https://i.pinimg.com/originals/0c/d8/6a/0cd86ab71aae1e16fef47fef803998ee.jpg', '')
INSERT INTO serp VALUES('Speak in english ', 'https://lehrermarktplatz.de/material/222137/picture-dictionary-word-banks-all-about-english-vocabulary-wachsendes-paket', 'https://i.pinimg.com/originals/5c/76/d5/5c76d519525457d9807a37c07d140f22.jpg', 'unterrichtmitspass')
INSERT INTO serp VALUES('Speak in english ', 'https://lehrermarktplatz.de/material/180602/conversation-bubbles-english-for-beginners-bearbeitbare-sprechblasen?utm_medium=social&utm_source=pinterest&utm_campaign=tailwind_tribes&utm_content=tribes&utm_term=1144892530_56228916_845126', 'https://i.pinimg.com/originals/45/64/66/456466acb284572575ce693a35bb75a3.jpg', '')
INSERT INTO serp VALUES('Speak in english ', 'https://mobile.twitter.com/AndereDeutsch/status/648719176048222208', 'https://i.pinimg.com/originals/ad/b9/34/adb934d8393b64177c7a0a4195648e4e.jpg', '')
INSERT INTO serp VALUES('Speak in english ', 'https://die-lernlotsen.com/englische-redewendungen/', 'https://i.pinimg.com/originals/b6/ef/70/b6ef705f7f6635bf4e895ee5d114714b.jpg', 'lernlotsen')
...
結果のJSONへのダンプ
共通結果形式:
[% IF notFirst;
",\n";
ELSE;
notFirst = 1;
END;
obj = {};
obj.query = query;
obj.images = [];
FOREACH item IN p1.serp;
obj.images.push({
title = item.title
pinner_username = item.pinner_username
link = item.link
image = item.image
});
END;
obj.json %]
開始テキスト:
[
終了テキスト:
]
結果の例:
[{
"query": "Speak in english",
"images": [
{
"link": "https://www.teflcourse.net/english-grammar-corner/great-ways-to-start-a-sentence/?r=Pinterest",
"author": "",
"title": "Great Ways to Start a Sentence",
"image": "https://i.pinimg.com/originals/dd/ba/c6/ddbac6d4813a82c55a658bf3afe8b90e.jpg"
},
{
"link": "https://www.buzzfeed.com/maximilianzender/deutschlernen?sub=0_10833256#10833256",
"author": "",
"title": "23 Fotos, die dich zur Weißglut bringen, wenn du gerade Deutsch lernst",
"image": "https://i.pinimg.com/originals/2e/73/f4/2e73f44e74756c79950772fca4fbea7d.jpg"
},
{
"link": "https://www.teflcourse.net/english-grammar-corner/great-ways-to-start-a-sentence/?r=Pinterest",
"author": "TEFLcourse",
"title": "Great Ways to Start a Sentence",
"image": "https://i.pinimg.com/originals/49/4f/72/494f7289e47ac7988611dc7a191e0f89.jpg"
},
...
]
}]
タスクエディタで「Prepend text」と「Append text」のオプションを表示するには、「More options」を有効にする必要があります。
利用可能な設定
| パラメーター | デフォルト値 | 説明 |
|---|---|---|
| Pages count | 5 | スクレイピングするページ数 |