LoginSignup
0
0

More than 5 years have passed since last update.

リダイレクト先のURLと、設定したいURLが合致するか確認する.py

Posted at

リダイレクトのテスト

概要

現URLへアクセスし、リダイレクト先のリストと、要望されているリダイレクト先のリストを突き合わせて、正しいか判別します。

目的

ウェブページのリダイレクト変更テストを行う際、スプレッドシートで確認できますが、10や100にもなると、作業量は増え生産性は落ちてしまいます。
そこで、Pythonさんに活躍してもらおうと、勉強を兼ねて作成しました。

成果物

# -*- coding: utf-8 -*-
import requests

#アクセスするURL
urls = ["https://qiita.com/logout/"
,"https://yahoo.co.jp"]

#*リダイレクト先の正しいURL*(架空)
reurls =['https://qiita.com/mypage/', 
'https://www.yahoo.co.jp/']

#リダイレクト時のURLを格納するリスト
newurl = []

def match():
    for url in urls:
        r = requests.get(url) 
        # ステータスを格納
        status = r.status_code
        # 新しいURLを格納
        redirect_url = r.url
        # リダイレクトの履歴を格納
        redirect_status = r.history
        # テストのため出力
        print(status)
        print(redirect_url)
        print(redirect_status)
        # newurl のリストに入れる
        newurl.append(redirect_url)

    if reurls == newurl:
        print("リダイレクトは完全一致")
    else:
        for i in range(len(reurls)):
            if reurls[i] != newurl[i]:
                print("問題は " + urls[i] + " です")

if __name__ == '__main__':
    match()

これを実行した場合、
問題は https://qiita.com/logout/ です
と表示されます。
対象となるURLが増えたときには有効なスクリプトかと思います。


もっときれいな書き方があるんだろうな、と思いながらも、
割とすんなりできたのでとても嬉しいです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0