{"id":1455,"date":"2021-06-20T07:19:10","date_gmt":"2021-06-19T22:19:10","guid":{"rendered":"https:\/\/sirius10.net\/blog\/wordpress\/?p=1455"},"modified":"2021-06-20T19:38:48","modified_gmt":"2021-06-20T10:38:48","slug":"post-1455","status":"publish","type":"post","link":"https:\/\/sirius10.net\/blog\/wordpress\/index.php\/2021\/06\/20\/1455\/","title":{"rendered":"puppeteer \u3067\u30ea\u30f3\u30af\u9077\u79fb\u3059\u308b"},"content":{"rendered":"\n<p>\u3000\u524d\u56de\u306f\u3001puppeteer \u3067\u30c8\u30c3\u30d7\u30da\u30fc\u30b8\u306e\u753b\u50cf\u3092\u4fdd\u5b58\u3057\u307e\u3057\u305f\u3002<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-wp-embed is-provider-sirius-\u306e\u30d6\u30ed\u30b0 wp-block-embed-sirius-\u306e\u30d6\u30ed\u30b0\"><div class=\"wp-block-embed__wrapper\">\n<blockquote class=\"wp-embedded-content\" data-secret=\"83crOW0Hhc\"><a href=\"https:\/\/sirius10.net\/blog\/wordpress\/index.php\/2021\/06\/19\/1448\/\">Javascript \u304c\u4f7f\u3048\u308b\u30d8\u30c3\u30c9\u30ec\u30b9\u306a\u30d6\u30e9\u30a6\u30b6(PhantomJS \u306e\u4ee3\u66ff)<\/a><\/blockquote><iframe loading=\"lazy\" class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; clip: rect(1px, 1px, 1px, 1px);\" title=\"&#8220;Javascript \u304c\u4f7f\u3048\u308b\u30d8\u30c3\u30c9\u30ec\u30b9\u306a\u30d6\u30e9\u30a6\u30b6(PhantomJS \u306e\u4ee3\u66ff)&#8221; &#8212; Sirius \u306e\u30d6\u30ed\u30b0\" src=\"https:\/\/sirius10.net\/blog\/wordpress\/index.php\/2021\/06\/19\/1448\/embed\/#?secret=3COfqlV2co#?secret=83crOW0Hhc\" data-secret=\"83crOW0Hhc\" width=\"500\" height=\"282\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe>\n<\/div><figcaption>\u524d\u56de\u306e\u8a18\u4e8b<\/figcaption><\/figure>\n\n\n\n<p>\u3000\u4eca\u56de\u306f\u3001\u30ea\u30f3\u30af\u9077\u79fb\u3055\u305b\u305f\u3044\u3068\u601d\u3044\u307e\u3059\u3002\u4f8b\u3048\u3070\u3001\u3053\u306e\u30b5\u30a4\u30c8\u306e\u30c8\u30c3\u30d7\u306e\u300c\u30e9\u30ba\u30d1\u30a4\u3067\u904a\u307c\u3046\uff01\u300d\u30ea\u30f3\u30af\u304b\u3089\u8fbf\u308a\u3001\u300cRTL-SDR \u7528 FM \u30e9\u30b8\u30aa\u30d5\u30ed\u30f3\u30c8\u30a8\u30f3\u30c9\u300d\u306e\u30da\u30fc\u30b8\u3092\u958b\u304b\u305b\u3066\u307f\u305f\u3044\u3068\u601d\u3044\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u3000\u5358\u7d14\u306b\u30da\u30fc\u30b8\u9077\u79fb\u3059\u308b\u3060\u3051\u306a\u3089\u3001page.goto(&#8216;URL&#8217;) \u3067\u3044\u3044\u306e\u3067\u3059\u304c\u3001\u4f8b\u3048\u3070\u3001\u3053\u306e\u30b5\u30a4\u30c8\u306e\u300c\u30e9\u30ba\u30d1\u30a4\u3067\u30a8\u30ed\u30b2\u300d\u306e\u30da\u30fc\u30b8\u306f\u3001\u540c\u3058\u30ea\u30f3\u30af\u3067\u9055\u3046\u5185\u5bb9\u3092\u8fd4\u3059\u3088\u3046\u306b\u4f5c\u3063\u3066\u3042\u308b\u306e\u3067\u5358\u7d14\u306a\u30da\u30fc\u30b8\u9077\u79fb\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002\u304d\u3061\u3093\u3068\u30ea\u30f3\u30af\u3092\u8fbf\u3089\u306a\u3051\u308c\u3070\u3001\u6b63\u3057\u3044\u30da\u30fc\u30b8\u306e\u5185\u5bb9\u304c\u8868\u793a\u3055\u308c\u306a\u3044\u3088\u3046\u306b\u4f5c\u3063\u3066\u3042\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u3000puppeteer \u3067\u30ea\u30f3\u30af\u64cd\u4f5c\u3092\u3084\u3063\u3066\u307f\u307e\u3057\u305f\u3002\u3053\u306e\u30b5\u30a4\u30c8\u306e\u300c\u30e9\u30ba\u30d1\u30a4\u3067\u904a\u307c\u3046\uff01\u300d-&gt;\u300c\u30bd\u30d5\u30c8\u30a6\u30a7\u30a2\u300d-&gt;\u300cRTL-SDR \u7528 FM \u30e9\u30b8\u30aa\u30d5\u30ed\u30f3\u30c8\u30a8\u30f3\u30c9\u300d\u3068\u8fbf\u3063\u3066\u3044\u304d\u3001\u6700\u5f8c\u306e\u30da\u30fc\u30b8\u306e\u30b9\u30af\u30ea\u30fc\u30f3\u30b7\u30e7\u30c3\u30c8\u3092\u64ae\u308a\u307e\u3059\u3002\u6b21\u306e\u3088\u3046\u306a\u5185\u5bb9\u306b\u306a\u308a\u307e\u3057\u305f\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted file\">#!\/usr\/bin\/node\n\nconst puppeteer = require(\"puppeteer-core\");\n\nconst URL = \"https:\/\/sirius10.net\/\";\n\n\/\/ \u3053\u306e\u9806\u756a\u3067\u30ea\u30f3\u30af\u3092\u30af\u30ea\u30c3\u30af\u3057\u3066\u3044\u304f\nconst link_text = [ \n       \"\u30e9\u30ba\u30d1\u30a4\u3067\u904a\u307c\u3046\uff01\",\n       \"\u30bd\u30d5\u30c8\u30a6\u30a7\u30a2\",\n       \"RTL-SDR \u7528 FM \u30e9\u30b8\u30aa\u30d5\u30ed\u30f3\u30c8\u30a8\u30f3\u30c9\"\n ];\n\n(async () =&gt; {\n  console.log(\"*** Start ***\");\n\n  console.log(\"Chromium \u8d77\u52d5\");\n  const browser = await puppeteer.launch({\n    headless: false,\n    slowMo: 50,\n    executablePath: \"\/usr\/bin\/chromium-browser\"\n  });\n\n  console.log(\"\u65b0\u3057\u3044\u30bf\u30d6\");\n  const page = await browser.newPage();\n\n  console.log(\"\u30d3\u30e5\u30fc\u30dd\u30fc\u30c8\/\u30c7\u30d0\u30a4\u30b9\u8a2d\u5b9a\");\n  await page.setViewport({\n    width: 1024,\n    height: 1997\n  });\n\n  console.log(\"sirius10 \u3078\u79fb\u52d5\");\n  await page.goto(URL);\n\n  console.log(\"\u30ea\u30f3\u30af\u3092\u305f\u3069\u308b\");\n  for( let i = 0; i &lt; link_text.length; i++ ) {\n    \/\/ a \u30bf\u30b0\u306e\u4e2d\u3067\u6307\u5b9a\u3057\u305f\u30c6\u30ad\u30b9\u30c8\u3092\u6301\u3064\u8981\u7d20\u3092\u6c42\u3081\u308b\u3002\n    let aTags = await page.$x('\/\/a[contains(text(), \"' + link_text[i] + '\")]'');\n    if( aTags.length == 0 ) {\n      console.log('\"' + link_text[i] + '\" \u30ea\u30f3\u30af\u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093');\n      continue;\n    }\n    console.log(link_text[i] + \"\u3092\u30af\u30ea\u30c3\u30af\");\n    await aTags[0].click();\n    await page.waitForNavigation();\n  }\n\n  console.log(\"\u30b9\u30af\u30ea\u30fc\u30f3\u30b7\u30e7\u30c3\u30c8\u3092 test2.png \u306b\u4fdd\u5b58\");\n  await page.screenshot({\n    path: \"test2.png\",\n    fullPage: true\n  });\n\n  console.log(\"Chromium \u7d42\u4e86\");\n  await browser.close();\n\n  console.log(\"*** End ***\");\n})();<\/pre>\n\n\n\n<p>\u3000link_text \u914d\u5217\u306e\u9806\u756a\u306b\u30ea\u30f3\u30af\u3092\u30af\u30ea\u30c3\u30af\u3057\u3066\u3044\u304d\u307e\u3059\u3002await page.$x(&#8216;\/\/a[contains(text(), &#8220;&#8216; + link_text[i] + &#8216;&#8221;)]&#8221;) \u306f\u30da\u30fc\u30b8\u5185\u306e a \u30bf\u30b0\u8981\u7d20\u306e\u4e2d\u3067\u3001\u30c6\u30ad\u30b9\u30c8\u306b link_text[i] \u304c\u3042\u308b\u8981\u7d20\u306e\u914d\u5217\u3092\u8fd4\u3057\u307e\u3059\u3002\u898b\u3064\u304b\u308c\u3070\u3001\u305d\u306e\u8981\u7d20\u3092\u30af\u30ea\u30c3\u30af\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u3000\u30af\u30ea\u30c3\u30af\u306f\u3001\u898b\u3064\u3051\u305f\u8981\u7d20.click() \u3067\u884c\u3044\u307e\u3059\u3002page.waitForNavigation() \u306f\u30da\u30fc\u30b8\u304c\u30ed\u30fc\u30c9\u3055\u308c\u308b\u306e\u3092\u5f85\u3061\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u3000\u4ee5\u4e0a\u3092 link_text \u306e\u9806\u756a\u306b\u7e70\u308a\u8fd4\u3057\u3001\u6700\u5f8c\u306b\u30b9\u30af\u30ea\u30fc\u30f3\u30b7\u30e7\u30c3\u30c8\u3092\u64ae\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/sirius10.net\/blog\/wordpress\/wp-content\/uploads\/2021\/06\/test2-525x1024.png\" alt=\"\" class=\"wp-image-1456\" width=\"477\" height=\"930\" srcset=\"https:\/\/sirius10.net\/blog\/wordpress\/wp-content\/uploads\/2021\/06\/test2-525x1024.png 525w, https:\/\/sirius10.net\/blog\/wordpress\/wp-content\/uploads\/2021\/06\/test2-154x300.png 154w, https:\/\/sirius10.net\/blog\/wordpress\/wp-content\/uploads\/2021\/06\/test2-768x1498.png 768w, https:\/\/sirius10.net\/blog\/wordpress\/wp-content\/uploads\/2021\/06\/test2-788x1536.png 788w, https:\/\/sirius10.net\/blog\/wordpress\/wp-content\/uploads\/2021\/06\/test2.png 1024w\" sizes=\"auto, (max-width: 477px) 100vw, 477px\" \/><figcaption>\u30ea\u30f3\u30af\u3092\u8fbf\u3063\u3066\u958b\u304f<\/figcaption><\/figure><\/div>\n\n\n\n<p>\u3000\u8a66\u3057\u3066\u307f\u305f\u3089\u3001\u300c\u30e9\u30ba\u30d1\u30a4\u3067\u30a8\u30ed\u30b2\u300d\u306e\u5e74\u9f62\u78ba\u8a8d\u3082\u5927\u4e08\u592b\u3067\u3057\u305f\u3002\u30b9\u30af\u30ea\u30fc\u30f3\u30b7\u30e7\u30c3\u30c8\u3092\u76ee\u7684\u3068\u3057\u306a\u3044\u306a\u3089\u3001\u5341\u5206\u4f7f\u3048\u305d\u3046\u3067\u3059\u3002<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u3000\u524d\u56de\u306f\u3001puppeteer \u3067\u30c8\u30c3\u30d7\u30da\u30fc\u30b8\u306e\u753b\u50cf\u3092\u4fdd\u5b58\u3057\u307e\u3057\u305f\u3002 \u3000\u4eca\u56de\u306f\u3001\u30ea\u30f3\u30af\u9077\u79fb\u3055\u305b\u305f\u3044\u3068\u601d\u3044\u307e\u3059\u3002\u4f8b\u3048\u3070\u3001\u3053\u306e\u30b5\u30a4\u30c8\u306e\u30c8\u30c3\u30d7\u306e\u300c\u30e9\u30ba\u30d1\u30a4\u3067\u904a\u307c\u3046\uff01\u300d\u30ea\u30f3\u30af\u304b\u3089\u8fbf\u308a\u3001\u300cRTL-SDR \u7528 FM \u30e9\u30b8\u30aa\u30d5\u30ed\u30f3\u30c8\u30a8\u30f3 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[22,4],"tags":[],"class_list":["post-1455","post","type-post","status-publish","format-standard","hentry","category-pupeeteer","category-raspberry-pi"],"_links":{"self":[{"href":"https:\/\/sirius10.net\/blog\/wordpress\/index.php\/wp-json\/wp\/v2\/posts\/1455","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sirius10.net\/blog\/wordpress\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/sirius10.net\/blog\/wordpress\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/sirius10.net\/blog\/wordpress\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/sirius10.net\/blog\/wordpress\/index.php\/wp-json\/wp\/v2\/comments?post=1455"}],"version-history":[{"count":11,"href":"https:\/\/sirius10.net\/blog\/wordpress\/index.php\/wp-json\/wp\/v2\/posts\/1455\/revisions"}],"predecessor-version":[{"id":1508,"href":"https:\/\/sirius10.net\/blog\/wordpress\/index.php\/wp-json\/wp\/v2\/posts\/1455\/revisions\/1508"}],"wp:attachment":[{"href":"https:\/\/sirius10.net\/blog\/wordpress\/index.php\/wp-json\/wp\/v2\/media?parent=1455"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/sirius10.net\/blog\/wordpress\/index.php\/wp-json\/wp\/v2\/categories?post=1455"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/sirius10.net\/blog\/wordpress\/index.php\/wp-json\/wp\/v2\/tags?post=1455"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}