スクレイピングで遮断されるのを防ぐ効果があるんです。

なんでこんなことを?

スクレイピングをしていた際に、あるサイトからデータの取得をしようとしたところ、特定回数で遮断されてしまいました。理屈を考えるとIPで遮断すると失うものも大きい(スマホなどの影響で)だろうし、たぶんuser agentも見ていると判断して、user agentをアクセス回数ごとに切り替えるようにしたらうまくいきました。

今回は、そのuser agentを変更する方法をメモしておきます

ini_setをスクリプトの中で設定することでできた

記載方法はそんなに難しくなくて、user agentの文字列を設定するだけです。

$fake_user_agent = "Mozilla/6.2 (X11; Linux i686) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/20.0.1132.47 Safari/536.11";

ini_set('user_agent', $fake_user_agent);

これだけで大丈夫。

このuser agentの文字列を私はmysqlに50パターンぐらいいれておいて、最初に使った時間、最後に使った時間、アクセスした回数を記録しつつ、アクセス回数が一定回数を超えたら、使えるuser agentを取得して〜の繰り返しで乗り越えられました。

メモがてら。

コメント

http://slkjfdf.net/ - Aquzak <a href="http://slkjfdf.net/">Iriguho</a> dhm.pmyj.webtopi.biz.jmd.ms http://slkjfdf.net/
http://slkjfdf.net/ - Evegexike <a href="http://slkjfdf.net/">Iokaje</a> tcj.gubc.webtopi.biz.puy.sq http://slkjfdf.net/
http://slkjfdf.net/ - Evegexike <a href="http://slkjfdf.net/">Iokaje</a> tcj.gubc.webtopi.biz.puy.sq http://slkjfdf.net/
[PHP]データを取得する際のuser agentを変更する|webトピ
[url=http://www.g8cunu81t57qo9ib513u8gju1p43r611s.org/]unfnhwbmcvj[/url]
nfnhwbmcvj http://www.g8cunu81t57qo9ib513u8gju1p43r611s.org/
<a href="http://www.g8cunu81t57qo9ib513u8gju1p43r611s.org/">anfnhwbmcvj</a>