以下複数行あるlogファイルの内容から、python3を使用して、ある一定のパラメータに属する引数が、「○○」の行のタイムスタンプのみを抽出したいのですが、こちらどのような方法があるか教えて頂けないでしょうか。
2018-10-15 05:41:52+0000 10_90_27_126 pycre5 on0000 9900008015918 INFO: redirect: redirect.jsp?prod=KRGJxxxx&prod=PRGJYW0052&num=9&cust=22 2018-10-15 06:41:52+0000 10_90_27_126 pycre5 on0000 9900008015918 INFO: redirect: redirect.jsp?prod=KRGJxxxx&prod=PRGJYW0052&num=9&cust=11 2018-10-15 07:01:52+0000 10_90_27_126 pycre5 on0000 9900008015918 INFO: redirect: redirect.jsp?prod=KRGJxxxx&prod=PRGJYW0052&num=9&cust=22 ・・・ ・・・ ・・・ ・・・
ご質問の主旨を確認させてください。”ある一定のパラメータに属する引数が、「○○」の行” とは、たとえば、 「cust=22の行」あるいは「prod=KRGJxxxxの行」といったように、行の末尾にある URLの一部と思われる文字列のクエリパラメータの値が、何らか指定の値である○○に該当する行と解釈してよいでしょうか?
はい、そうです。宜しくお願い致します。
ご返信ありがとうございます。すみませんが、もう1点だけ確認ですが、 「python3を使用して」というのは必須なのでしょうか? というのは、ぱっと見、よく使うシェルコマンドの組み合わせ(grep、 egrep , cut , awk など)でいけるのでは? と思いましたので。pythonでコード書かなくてもシェルスクリプトだけでいければそれも回答としてOKでしょうか?
すみません。こちらpython3を使用しての記述方法を知りたいです。
ご返信ありがとうございます。了解しました。
URLのクエリパラメータのパースを自作せずに、そのためのパッケージを使うtiitoi さんのご回答がスマートだと思いました。
以下の場合、list index out of rangeエラーが出た場合は、if文などで対応する必要があるのでしょうか。
回答2件
あなたの回答
tips
プレビュー