Python - ウェブスクレイピング - request - HTTP Error 400: Bad Request

クラウディア 
1. 概要
2. method

1. 概要

 「HTTP Error 400: Bad Request」という、例外が、「YouTube」で漏れなく発生しましてな。  それに対する、対処方法をメモしていきます。  これ、先にオチを言ってしまえば、「method」なのでありました。

2. method

 まぁ、こんな感じでしたわ。

import ssl

from socket import timeout
from urllib import request
from urllib.error import URLError, HTTPError

ssl._create_default_https_context = ssl._create_unverified_context

try:
  url = 'https://www.youtube.com/watch?v=w_BUvZf6YTU'
  headers = { 'User-Agent' : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36' }

  queue = request.Request(url, headers=headers, method='POST')
  html  = request.urlopen(queue, timeout=8)

except (URLError, timeout) as ex:
  print("    ", url, " NG[", ex, "]")

except (HTTPError, ConnectionResetError) as ex:
  print("    ", url, " NG[", ex, "]")
 これを実行すると

NG[ HTTP Error 400: Bad Request ]
 となっちゃいます。  これ、13行目の「POST」を「GET」へ書きかえることで、うまいこととれるようになりました。
earthcar(アースカー)