# 說好的回傳JSON呢 ###### tags: `requests` `JSON` `Python` 今天在爬蟲一網站時 明明在Chrome敲Web API網址可以正常看到JSON格式資料回傳 如下圖 ![](https://i.imgur.com/o95vQyR.png) **但是呢...到了Postman說好的JSON資料呢** ![](https://i.imgur.com/l6hl5JT.png) 怎麼變成請求網頁 一開始以為`HTTP Header` 加上`回應內容類型`及可 | KEY | VALUE | 說明 | | -------- | -------- | --- | | Accept | application/json | [能接受回應內容類型](https://zh.wikipedia.org/wiki/HTTP%E5%A4%B4%E5%AD%97%E6%AE%B5) | 或是以為有在`Cookie`放入他們的驗證嗎 結論都不是,原來是 | KEY | VALUE | 說明 | | -------- | -------- | --- | | User-Agent | Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:88.0) Gecko/20100101 Firefox/88.0 | [告訴伺服器我使用什麼瀏覽器](https://zh.wikipedia.org/wiki/HTTP%E5%A4%B4%E5%AD%97%E6%AE%B5) | 感覺是網站設計稍微阻擋不良用戶`發出請求` 不過這阻擋當然是沒有用 只要在`HTTP request header`加上`User-Agent`就解決 Python requests code ```python= url = "https://www.wantgoo.com/stock/2330/news-list?index=1" headers = { 'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:88.0) Gecko/20100101 Firefox/88.0', } rsp = requests.get(url, headers=headers) print("encoding:", rsp.encoding) print("apparent_encoding:", rsp.apparent_encoding) loaded_json = json.loads(response.text) print(loaded_json) ```