質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
スクレイピング

スクレイピングとは、公開されているWebサイトからページ内の情報を抽出する技術です。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

プロキシ

プロキシは、二つ以上の相互接続されているプログラム又はデバイスの間に存在する中間サーバを指します。プロキシは、接続者の「代理」としてインターネット接続を行い、接続元にレスポンスを返します。また、その機能を実現するソフトウェアの意味合いもあります。

Q&A

1回答

689閲覧

プロキシリスト自動作成─Bot判定?

kitti

総合スコア6

スクレイピング

スクレイピングとは、公開されているWebサイトからページ内の情報を抽出する技術です。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

プロキシ

プロキシは、二つ以上の相互接続されているプログラム又はデバイスの間に存在する中間サーバを指します。プロキシは、接続者の「代理」としてインターネット接続を行い、接続元にレスポンスを返します。また、その機能を実現するソフトウェアの意味合いもあります。

0グッド

0クリップ

投稿2018/02/22 04:49

前提・実現したいこと

プロキシのリストサイト(http://www.freeproxylists.net/ja/)から、pythonでアドレスリストを自動作成したいと思っています。

発生している問題・エラーメッセージ

Seleniumで、ヘッドレスChromeを使い、上記URLを叩くと、以下のページのどちらか表示されます。

(1)通常のブラウザChromeのアクセスで表示されるプロキシリストページ
(2)文字認証(Bot除外)ページ

同じURLによるリクエストで、(1)が表示されることもありますが、(2)が表示されることもあります。

また、「ページ数」の引数を与えると、確実に(2)が表示されます。
通常のブラウザChromeでページ数を与えると、(1)の該当ページが表示されます。

http://www.freeproxylists.net/ja/?page=2

作成ソースコード

python

1from selenium import webdriver 2 3driver = webdriver.Chrome() 4driver.get('http://www.freeproxylists.net/ja/')

試したこと

ヘッドレスChromeのUserAgent・リファラ・navigator情報は、通常のブラウザChromeと同一になっており、一度ページを読み込んだ後に、javascriptで判定されているわけでもなさそうです。

サイト側の/ja/以下のスクリプトで自動判定されていると思われるのですが、何の情報を基に、Botとして認識されていると考えられますでしょうか?

補足情報

Python 3.6.1
Selenium 3.3.1
ChromeDriver 2.35.528161
Google Chrome 64.0.3282.167

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

raccy

2018/03/04 00:09

Bot防止の認証も「認証」の一種とみなされ、それを回避する場合は「不正アクセス禁止法」に抵触する可能性があります。Botにおけるセキュリティ研究目的など正当な理由以外でその方法を探る場合(今回のような質問する場合も含む)も助長する行為とみなされ、処罰の対象になり得る可能性があります。IT関係に詳しい弁護士に相談されることをオススメします。
guest

回答1

0

headless chrome ではついていないけれど、
chrome ではついているheaderとして

Accept-Language:ja,en-US;q=0.9,en;q=0.8

があります。

これの有無で判定していそうです。

現状ではheadless chrome でこのヘッダを付与するのは難しそうに見えます。

投稿2018/03/03 23:31

calkinos

総合スコア452

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kitti

2018/03/04 02:40

ご回答ありがとうございます!すぐ確認してみます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問