這個要怎麼下載完成呢?F12瀏覽器中擷取的原始數據
curl ^"https://cn.govopendata.com/xinwenlianbo/20250422/^" ^
-H ^"accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7^" ^
-H ^"accept-language: zh-CN,zh;q=0.9^" ^
-H ^"cache-control: max-age=0^" ^
-b ^"csrftoken=pNwjIMIrOOrnBe4GHTApOViIeNRBWwtI; _ga=GA1.1.239242113.1753140858; FCNEC=^%^5B^%^5B^%^22AKsRol_7sr_jz8BXh0YeUEUR5mSy1qL4wfsfs9XfmUOOzlIdLMJvsfgol4pcXisr7VbaTJZwRTrVSw8GGMEaAamWDh9LSXIxXj9O5k3V0EkilBGqe15w6DSZ4BceMdE4r1jUJZWTKbEm3STkdLujOfq755fcOqJP5A^%^3D^%^3D^%^22^%^5D^%^5D; _clck=1wdxmr4^%^7C2^%^7Cfxt^%^7C0^%^7C2029; _ga_7NESVRSV0K=GS2.1.s1753185097^$o3^$g1^$t1753186048^$j60^$l0^$h0; _clsk=nb3rgu^%^7C1753186048890^%^7C5^%^7C1^%^7Cv.clarity.ms^%^2Fcollect; __gads=ID=335a8fb772d726f1:T=1753140847:RT=1753186047:S=ALNI_MYKyblOPT3WE9PIgjHdPtYlQdN2wQ; __gpi=UID=0000116b9b56a5c8:T=1753140847:RT=1753186047:S=ALNI_Mb_sdW8WlGVmWp2SQ0U3v9G7fppFg; __eoi=ID=f8abc10bf0356803:T=1753140847:RT=1753186047:S=AA-Afjazt5ToEHQpkDn9PtsRpGnn^" ^
-H ^"priority: u=0, i^" ^
-H ^"referer: https://cn.govopendata.com/xinwenlianbo/?page=13^" ^
-H ^"sec-ch-ua: ^\^"Not)A;Brand^\^";v=^\^"8^\^", ^\^"Chromium^\^";v=^\^"138^\^", ^\^"Google Chrome^\^";v=^\^"138^\^"^" ^
-H ^"sec-ch-ua-mobile: ?0^" ^
-H ^"sec-ch-ua-platform: ^\^"Windows^\^"^" ^
-H ^"sec-fetch-dest: document^" ^
-H ^"sec-fetch-mode: navigate^" ^
-H ^"sec-fetch-site: same-origin^" ^
-H ^"sec-fetch-user: ?1^" ^
-H ^"upgrade-insecure-requests: 1^" ^
-H ^"user-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36^"
AI修改的python程式碼:
import requests
from pathlib import Path
url = "https://cn.govopendata.com/xinwenlianbo/20250721/"
headers = {
"sec-ch-ua": '"Not A;Brand";v="8", "Chromium";v="138", "Google Chrome";v="138"',
"accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7",
"accept-language": "zh-CN,zh;q=0.9",
"cache-control": "max-age=0",
"referer": "https://cn.govopendata.com/xinwenlianbo/20250721/",
"sec-ch-ua-mobile": "?0",
"sec-ch-ua-platform": '"Windows"',
"sec-fetch-dest": "document",
"sec-fetch-mode": "navigate",
"sec-fetch-site": "same-origin",
"sec-fetch-user": "?1",
"upgrade-insecure-requests": "1",
"user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36"
}
cookies = {
"csrftoken": "pNwjIMIrOOrnBe4GHTApOViIeNRBWwtI",
"__gads": "ID=335a8fb772d726f1:T=1753140847:RT=1753140847:S=ALNI_MYKyblOPT3WE9PIgjHdPtYlQdN2wQ",
"__gpi": "UID=0000116b9b56a5c8:T=1753140847:RT=1753140847:S=ALNI_Mb_sdW8WlGVmWp2SQ0U3v9G7fppFg",
"__eoi": "ID=f8abc10bf0356803:T=1753140847:RT=1753140847:S=AA-Afjazt5ToEHQpkDn9PtsRpGnn",
"_ga": "GA1.1.239242113.1753140858",
"FCNEC": '[[\"AKsRol_lyJVKvuPII10tMMWp3m_gh6UZiJ9Iej1Qg7VnR8bSTCnrLKTYNiQpPvEtsQkWDDlJCXxFJLurwTgZhoOiDfPe8XWxbQiQxlkfi3r7qGSPUlSTQyiBCTOpkIxy1RVLbQtVFHCYXz9FGzaWXlOp1l-wGib7Gg==\"]]',
"_ga_7NESVRSV0K": "GS2.1.s1753140857$o1$g1$t1753140966$j39$l0$h0"
}
with requests.Session() as s:
resp = s.get(url, headers=headers, cookies=cookies, timeout=10)
resp.raise_for_status()
resp.encoding = resp.apparent_encoding
Path("xinwenlianbo_20250721.html").write_text(resp.text, encoding="utf-8")
自動化和腳本回覆: 這個怎麼才能下載完成?jsl 不起作用
謝謝專家!
u = "https://cn.govopendata.com/xinwenlianbo/20250721/";
cookie_str = "csrftoken=pNwjIMIrOOrnBe4GHTApOViIeNRBWwtI; __gads=ID=335a8fb772d726f1:T=1753140847:RT=1753140847:S=ALNI_MYKyblOPT3WE9PIgjHdPtYlQdN2wQ; __gpi=UID=0000116b9b56a5c8:T=1753140847:RT=1753140847:S=ALNI_Mb_sdW8WlGVmWp2SQ0U3v9G7fppFg; __eoi=ID=f8abc10bf0356803:T=1753140847:RT=1753140847:S=AA-Afjazt5ToEHQpkDn9PtsRpGnn; _ga=GA1.1.239242113.1753140858; FCNEC=[[\!"AKsRol_lyJVKvuPII10tMMWp3m_gh6UZiJ9Iej1Qg7VnR8bSTCnrLKTYNiQpPvEtsQkWDDlJCXxFJLurwTgZhoOiDfPe8XWxbQiQxlkfi3r7qGSPUlSTQyiBCTOpkIxy1RVLbQtVFHCYXz9FGzaWXlOp1l-wGib7Gg==\!" ]]; _ga_7NESVRSV0K=GS2.1.s1753140857$o1$g1$t1753140966$j39$l0$h0";
headers = {
"Cookie: " || cookie_str,
"sec-ch-ua: \!"Not A;Brand\!" ;v=\!"8\!" , \!"Chromium\!" ;v=\!"138\!" , \!"Google Chrome\!" ;v=\!"138\!"",
"accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7",
"accept-language: zh-CN,zh;q=0.9",
"cache-control: max-age=0",
"referer: https://cn.govopendata.com/xinwenlianbo/20250721/",
"sec-ch-ua-mobile: ?0",
"sec-ch-ua-platform: \!"Windows\!"",
"sec-fetch-dest: document",
"sec-fetch-mode: navigate",
"sec-fetch-site: same-origin",
"sec-fetch-user: ?1",
"upgrade-insecure-requests: 1",
"user-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36"
};
try(
rs = New HTTP Request(URL(u), Method("GET"), Headers(headers));
rr = rs << Send();
status = rr << GetStatusCode();
If(status == 200,
body = rr << GetBody();
txt = Blob To Char(body, "UTF-8");
Write File("xinwenlianbo_20250721.html", txt);
,
Show("Error: Status Code = " || Char(status));
);
);
回覆: 這個怎麼才能下載完成?JMP 對 Headers(...) 的參數有什麼要求?我認為它應該是一個關聯數組,而不是一個列表。
JSL 和 Python 對 [] 和 {} 的用法幾乎相反;我相信人工智慧總是會感到困惑。
回覆: 這個怎麼才能下載完成?謝謝專家!
當我使用我習慣編寫的 JSL 時,我並沒有成功。我認為這是cookie處理方面的問題。
但我不知道該如何處理。請專家指導一下嗎?
h=[=>]; u="https://cn.govopendata.com/xinwenlianbo/20250422/";
h["accept"]="text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7";
h["accept-language"]="zh-CN,zh;q=0.9";
h["cache-control"]="max-age=0";
h["cookies"]="csrftoken=pNwjIMIrOOrnBe4GHTApOViIeNRBWwtI; _ga=GA1.1.239242113.1753140858; FCNEC=%5B%5B%22AKsRol_7sr_jz8BXh0YeUEUR5mSy1qL4wfsfs9XfmUOOzlIdLMJvsfgol4pcXisr7VbaTJZwRTrVSw8GGMEaAamWDh9LSXIxXj9O5k3V0EkilBGqe15w6DSZ4BceMdE4r1jUJZWTKbEm3STkdLujOfq755fcOqJP5A%3D%3D%22%5D%5D; _clck=1wdxmr4%7C2%7Cfxt%7C0%7C2029; _ga_7NESVRSV0K=GS2.1.s1753185097$o3$g1$t1753186048$j60$l0$h0; _clsk=nb3rgu%7C1753186048890%7C5%7C1%7Cv.clarity.ms%2Fcollect; __gads=ID=335a8fb772d726f1:T=1753140847:RT=1753186047:S=ALNI_MYKyblOPT3WE9PIgjHdPtYlQdN2wQ; __gpi=UID=0000116b9b56a5c8:T=1753140847:RT=1753186047:S=ALNI_Mb_sdW8WlGVmWp2SQ0U3v9G7fppFg; __eoi=ID=f8abc10bf0356803:T=1753140847:RT=1753186047:S=AA-Afjazt5ToEHQpkDn9PtsRpGnn";
h["priority"]="u=0, i";
h["referer"]="https://cn.govopendata.com/xinwenlianbo/?page=13";
h["sec-ch-ua"]="\!"Not)A;Brand\!";v=\!"8\!", \!"Chromium\!";v=\!"138\!", \!"Google Chrome\!";v=\!"138\!"";
h["sec-ch-ua-mobile"]="?0";
h["sec-ch-ua-platform"]="\!"Windows\!"";
h["sec-fetch-dest"]="document";
h["sec-fetch-mode"]="navigate";
h["sec-fetch-site"]="same-origin";
h["sec-fetch-user"]="?1";
h["upgrade-insecure-requests"]="1";
h["user-agent"]="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36";
try(rs=New HTTP Request(URL(u),Method("GET"),Headers(h)));try(rr=rs<
<SEND></SEND>
<P class="_tgt transPara grammarSection"> </P>
回覆: 這個怎麼才能下載完成?很難肯定地說,但你不想對令牌進行硬編碼。
通常,當您登入使用該 csrf 令牌的網站時,每次您填寫包含表單的網頁時,都會獲得一個全新的令牌。根據網站技術的不同,該令牌可能是請求標頭的一部分,也可能嵌入在以 post 形式發送的表單資料中。您似乎正在執行 get 操作而不是 post 操作,因此將其放在標頭中是合理的。如果您尚未更新令牌,則可能正在使用一個。該令牌大約存在一天,已經過期。回覆: 這個怎麼才能下載完成?謝謝你,克雷格!
然後我仍然會透過使用 JSL 呼叫 python 程式碼來處理它
python中的ChromiumPage庫可以自動取得完整的抓包數據,順利下載網頁內容。
回覆: 這個怎麼才能下載完成?標題可以是任一種。
如果它是一個關聯數組,它會
鍵:值
為你。
但由於標題參數中的按鍵不必唯一,因此您也可以使用帶有
鍵:值
作為列表中的一個項目。
回覆: 這個怎麼才能下載完成?通常情況下,你也不會使用客戶端的 Cookie。 Cookie 由伺服器提供。
回覆: 這個怎麼才能下載完成?request = New HTTP Request(
URL( "https://cn.govopendata.com/xinwenlianbo/20250422/" ),
Method( "GET" )
);
html = request << download("$TEMP/govopendata.html");
Web(html);
這將下載並開啟網頁
回覆: 這個怎麼才能下載完成?謝謝專家!
GET https://cn.govopendata.com/xinwenlianbo/20250422/
schannel: next InitializeSecurityContext failed: CRYPT_E_REVOCATION_OFFLINE (0x80092013)
回覆: 這個怎麼才能下載完成?但這個網址可以在瀏覽器中打開
回覆: 這個怎麼才能下載完成?看起來您有憑證問題,憑證應該由伺服器處理,而不是客戶端,儘管有些公司確實安裝了本機憑證。
對於該錯誤,您可以執行以下操作:
request = New HTTP Request(
URL( "https://cn.govopendata.com/xinwenlianbo/20250422/" ),
Method( "GET" ),
Verify SSL( "false" )
);
html = request << download("$TEMP/govopendata.html");
Web(html);
這相當於 curl 的--ssl-no-revoke 選項