質問編集履歴

1

質問を平易にしました。

2017/01/12 00:40

投稿

Udomomo
Udomomo

スコア1524

test CHANGED
@@ -1 +1 @@
1
- 【Python3】Javascriptによるリダイレクトを判定するには
1
+ 【Python3】リダイレクトを含めた最終遷移先URLを取得するには
test CHANGED
@@ -1,32 +1,8 @@
1
- URLを入力し、Javascriptを使った以下のようなリダイレクトがあるかを判定するツールを作ろうと思っています。使用言語はPython3です。
1
+ URLを入力し、リダイレクトがあるかを判定するツールを作ろうと思っています。使用言語はPython3です。
2
2
 
3
+ リダイレクトの方式にはいろいろあるため、**「リンククリックから4-5秒の間に最後に遷移した先のURLと、元々クリックしたURLとを比較する」**といった方法でまとめて判定できないか考えています。
3
4
 
4
-
5
- --------------------------
6
-
7
- window.location.href = "{url}";
8
-
9
- window.location.assign("{url}");
10
-
11
- window.navigate("{url}");
12
-
13
- window.location.replace("{url}"); 等
14
-
15
-
16
-
17
- --------------------------
18
-
19
-
20
-
21
- これらをPhantomJS等を使って判別しようと思っていたのですが、上記の処理をどのファイルに入れているかはサイトによって大きく異なると予想され、複雑なコードになってしまいそうです。
22
-
23
- そのため、もっと簡単にできないか悩んでいます。
24
-
25
-
26
-
27
- 一つ考えているのは、**「リンククリックから4-5秒の間に最後に遷移した先のURLと、元々クリックしたURLとを比較する」**といった方法です。
28
-
29
- ただ、これの実現方法がわかりません。urllib.request.urlopen関数のgetcodeメソッドでできないか考えたのですが、javascriptリの場合はリダイレクト処理を行うページもHTMLてくるの、最終的な遷移先のURLを取れないようです。
5
+ ただ、これの実現方法がわかりません。当初はurllib.request.urlopen関数のgetcodeメソッドを使おうと考えたのですが、これはリンク先のURLを返してくるだけのようです。そのため、Javascriptによるダイレトなど、リダイレクトを行うページもHTMLてくる方式場合、最終遷移先のURLを取れないようです。
30
6
 
31
7
 
32
8