前提・実現したいこと
tampermonkeyを使って、検索ボタンを押したあとの画面の情報をスクレイピングしようとしています。
発生している問題
該当サイトでワードを検索し、画面遷移後のページでスクレイピングする処理が動いてほしいのですが、
先にスクレイピングの処理が走り、そのあとに画面が遷移してしまいます。
該当のソースコード
javascript
1const searchWords = ['javascript','java']; 2getInfo(searchWords); 3 4function getInfo(searchWords) { 5 'use strict'; 6 searchWords.forEach(function(word) { 7 sleep(10000); 8 //検索欄にワードを入力 9 let searchBox = document.getElementById('searchText'); 10 searchBox.value = word; 11 //検索ボタンクリック 12 document.getElementById('searchButton').click(); 13 //スクレイピング処理 14 ・・・・・ 15 }); 16}; 17 18function sleep(waitMsec) { 19 var startMsec = new Date(); 20 while (new Date() - startMsec < waitMsec); 21};
試したこと
whileで数秒間空ループして待っていれば画面遷移して、遷移後の画面でスクレイピングの処理を動かせるかと思ったのですが、
現状のコードだと数秒待機したのち(画面遷移せず)スクレイピングの処理が走り、その後画面遷移してしまいます。
スクレイピングやjavascript自体が初めてでこの挙動がどうしても理解できません。
どうかご教示いただけると幸いです。
お手数をおかけしますが、何卒よろしくお願いいたします!
回答1件
あなたの回答
tips
プレビュー