Re:ログインする必要のあるURLと、JSLログインを介してCookieを取得してデータをダウンロードする方法。私はVBユーザーではありませんが、3つのnewHttpRequestsを使用してJMPで機能するようです。
VBコードの3つのセクションは、「。send」で終わります。
最初のセクションはログインページに移動します。 なぜそれが必要なのかわからない...それはあなたにクッキーを与えないが、最初にそれを訪問する必要があるかもしれない。
2番目のセクションでは、post_dataをURLに送信します。このURLは、ログインしていることを意味するCookieを提供します。
JMPのhttprequestは、そのデータを保持する場合があります。 または、httprequestにファイルに書き込んでから、ファイルから取得するように指示する必要がある場合があります。
(2)は、ある種のVB構造からCookieの値を取得します。
3番目のセクションでは、URLを使用してデータを取得し、資格情報としてCookieを提供します。 JMPはあなたのためにそれをするかもしれません。
// get a cookie
try(deletefile("$temp/cookie.txt"));
s = New HTTP Request(
URL( "http://httpbin.org/cookies/set/aaa/bbb" ),
Method( "GET" ),
Headers( {"Accept: application/json", "User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:99.0) Gecko/20100101 Firefox/99.0"} ),
cookiefile("$temp/cookie.txt")
);
data = s << Send;
show(loadtextfile("$temp/cookie.txt"));
// send a cookie
s = New HTTP Request(
URL( "http://httpbin.org/cookies" ),
Method( "GET" ),
Headers( {
"Accept: application/json",
"Cookie: PHPSESSID=298zf09hf012fh2; csrftoken=u32t4o3tb3gg43; _gat=1",
"User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:99.0) Gecko/20100101 Firefox/99.0"
} )
);
data = s << Send;
Show( data ); // note the aaa cookie was persisted
Re:ログインする必要のあるURLと、JSLログインを介してCookieを取得してデータをダウンロードする方法。
何度も試しましたが、直接ログインして完全なデータをダウンロードする方法はありません。
インターネットでPythonコードを見つけましたが、それでもうまくいきませんでした。

Re:ログインする必要のあるURLと、JSLログインを介してCookieを取得してデータをダウンロードする方法。class AllcontentSpider(scrapy.Spider):
name = 'allcontent'
headers = {
'Host': 'www.jisilu.cn', 'Connection': 'keep-alive', 'Pragma': 'no-cache',
'Cache-Control': 'no-cache', 'Accept': 'application/json,text/javascript,*/*;q=0.01',
'Origin': 'https://www.jisilu.cn', 'X-Requested-With': 'XMLHttpRequest',
'User-Agent': 'Mozilla/5.0(WindowsNT6.1;WOW64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/67.0.3396.99Safari/537.36',
'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8',
'Referer': 'https://www.jisilu.cn/login/',
'Accept-Encoding': 'gzip,deflate,br',
'Accept-Language': 'zh,en;q=0.9,en-US;q=0.8'
}
def start_requests(self):
login_url = 'https://www.jisilu.cn/login/'
headers = {
'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8',
'Accept-Encoding': 'gzip,deflate,br', 'Accept-Language': 'zh,en;q=0.9,en-US;q=0.8',
'Cache-Control': 'no-cache', 'Connection': 'keep-alive',
'Host': 'www.jisilu.cn', 'Pragma': 'no-cache', 'Referer': 'https://www.jisilu.cn/',
'Upgrade-Insecure-Requests': '1',
'User-Agent': 'Mozilla/5.0(WindowsNT6.1;WOW64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/67.0.3396.99Safari/537.36'}
yield Request(url=login_url, headers=headers, callback=self.login,dont_filter=True)
def login(self, response):
url = 'https://www.jisilu.cn/account/ajax/login_process/'
data = {
'return_url': 'https://www.jisilu.cn/',
'user_name': config.username,
'password': config.password,
'net_auto_login': '1',
'_post_type': 'ajax',
}
yield FormRequest(
url=url,
headers=self.headers,
formdata=data,
callback=self.parse,
dont_filter=True
)
def parse(self, response):
for i in range(1,3726):
focus_url = 'https://www.jisilu.cn/home/explore/sort_type-new__day-0__page-{}'.format(i)
yield Request(url=focus_url, headers=self.headers, callback=self.parse_page,dont_filter=True)
def parse_page(self, response):
nodes = response.xpath('//div[@class="aw-question-list"]/div')
for node in nodes:
each_url=node.xpath('.//h4/a/@href').extract_first()
yield Request(url=each_url,headers=self.headers,callback=self.parse_item,dont_filter=True)
def parse_item(self,response):
item = JslItem()
title = response.xpath('//div[@class="aw-mod-head"]/h1/text()').extract_first()
s = response.xpath('//div[@class="aw-question-detail-txt markitup-box"]').xpath('string(.)').extract_first()
ret = re.findall('(.*?)\.donate_user_avatar', s, re.S)Re:ログインする必要のあるURLと、JSLログインを介してCookieを取得してデータをダウンロードする方法。これは、このフォーラムの範囲を超えています。 おそらく、サイトはあなたがやりたいことのためのAPIを提供しています。
このサイトでは、JavaScriptを使用して、正しくログインしていることを確認していると思います。JMPはjavascriptを実行しません。
キャプチャは問題の一部である可能性があり、人間との対話が必要になる場合があります。
ユーザー名またはパスワードに特殊文字が含まれている場合は、なんらかのエンコーディングが必要になります。
413エラーコードは、他の何かが間違っていることを意味している可能性があります。
Re:ログインする必要のあるURLと、JSLログインを介してCookieを取得してデータをダウンロードする方法。私の粘り強さを許してください。
私はこのトピックを試し続けます。
このメソッドはスクリプトを介してログインでき、ログイン失敗のプロンプトは表示されないことがわかりました。
しかし、私はまだその中身を分析しません。
ありがとう!

Re: ログインに必要な URL と、JSL ログインで Cookie を取得してデータをダウンロードする方法を教えてください。
Char To Blob( "~1F~8B~08~00~00~00~00~00~00~03~ABVJ~CEOIU~B2214~D6Q~CA-NW~B2Rz~BEg~D7~D3~0D~13~9FOY~F1~ACc~FB~D3~09~BD~CF:~A6=~ED_~FCd~F7~12%~1D~A5~94~C4~92D%~ABj~A5~E4~C4~82~92~E4~0C 3~AF4'~A7~B6~16~00x&~D1~03E~00~00~00", "ascii~hex" )
Re: ログインに必要な URL と、JSL ログインで Cookie を取得してデータをダウンロードする方法を教えてください。
kbz_newcookie=1; kbzw__user_login=7Obd08_P1ebax9aXwZKsmLCuprCTpYKvpuXK7N_u0ejF1dSeq8WhwtappqDaotqYq8TYqNStwtSapKusy6rNp8euxa-YrqXW2cXS1qCasZypl6iZmLKgzaLOvp_G5OPi2OPDpZalp5OguNnP2Ojs3Jm6y4Ksj6iyk8-wx5eoopWq6dzjx83G2cLc7JCllKunqJ-ZlMKqyq7Do5PkytvGlMDazOTboIK5yenm4N2Qp5miqaOcspyrkKeRr5fG2cfR092oqpywmqqY; kbzw__Session=mnijj070u2h083ms7ouuah9b22; Hm_lvt_164fe01b1433a19b507595a43bf58262=1652962728,1652966374,1653359409,1653375276; Hm_lpvt_164fe01b1433a19b507595a43bf58262=1653375282
Re: ログインに必要な URL と、JSL ログインで Cookie を取得してデータをダウンロードする方法を教えてください。はい、この Web サイトはセキュリティの一部を JavaScript に依存していると思います。 Selenium の使用に関する他のブログ記事をご覧になることをお勧めします。 そうすれば、jmp から動作する既存のブラウザーをスクリプト化できます。Re: ログインに必要な URL と、JSL ログインで Cookie を取得してデータをダウンロードする方法を教えてください。ありがとうクレイジ!
分かりました。 それだけです。
残念ながら、私のコンピューターには Python がインストールされておらず、JMP を使用して以来、Python をインストールしていません。
この例だけでも、ログインが必要な Web ページの Cookie を取得するには、VBA の方が Python よりも簡単であるように思われます。

Re: ログインに必要な URL と、JSL ログインで Cookie を取得してデータをダウンロードする方法を教えてください。そして、それでも見たい場合は、1F8B が gzip 署名です (Accept-Encoding が gzip などと言っているからです)。
blob=Char To Blob( "~1F~8B~08~00~00~00~00~00~00~03~ABVJ~CEOIU~B2214~D6Q~CA-NW~B2Rz~BEg~D7~D3~0D~13~9FOY~F1~ACc~FB~D3~09~BD~CF:~A6=~ED_~FCd~F7~12%~1D~A5~94~C4~92D%~ABj~A5~E4~C4~82~92~E4~0C 3~AF4'~A7~B6~16~00x&~D1~03E~00~00~00", "ascii~hex" );
write(blobtochar(Gzip Uncompress(blob)))
{"code":413,"msg":"缺少用户名或口令","data":{"captcha":null}}
グーグル翻訳: "ユーザー名またはパスワードがありません"
しかし、Selenium を使用する方がより良い答えになると本当に思います。 Python Selenium を使用したブラウザ スクリプトログインをスクリプト化し、一部のデータをページングして、データ テーブルにロードする方法を示します。
Re: ログインに必要な URL と、JSL ログインで Cookie を取得してデータをダウンロードする方法を教えてください。それは動作しません:
<BR />s = New HTTP Request( URL( "https://www.jisilu.cn/login" ), Method( "get" ) );
data = s << Send;
username = "lala";
password = "jmp";
jj = "return_url=http://www.jisilu.cn/&user_name=" || username || "&password=" || password || "&net_auto_login=1&_post_type=ajax";
h = [=> ];
h["Content-Type"] = "application/json";
h["User-Agent"] = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36";
h["Content-Type"] = "application/x-www-form-urlencoded; charset=UTF-8";
s = New HTTP Request( URL( "https://www.jisilu.cn/webapi/account/login_process/" ), Method( "POST" ), JSON( jj ), Headers( h ) );
data1 = s << Send;
Re: ログインに必要な URL と、JSL ログインで Cookie を取得してデータをダウンロードする方法を教えてください。それは何をしましたか? ログウィンドウに何かありますか?
表示 (データ);
Show(s<
Show(s<
Show(s<
Show(s<
動作する Python コードがある場合は、それを使用してみませんか?
Python コードを使用して .csv ファイルを作成し、それを JMP にインポートします。
Python インターフェイスまたは RunProgram を使用して、JMP から呼び出すことができます。
VB プログラムで .csv ファイルを作成してインポートする場合も同じです。
Re: ログインに必要な URL と、JSL ログインで Cookie を取得してデータをダウンロードする方法を教えてください。
Re: ログインに必要な URL と、JSL ログインで Cookie を取得してデータをダウンロードする方法を教えてください。Python Selenium を使用したブラウザ スクリプト
簡単ではありませんが、可能です。 解決しなければならないキャプチャを取得するまで。
ログインする必要がある URL、および JSL ログインを通じて Cookie を取得してデータをダウンロードする方法。こんにちは、みんな!
このサイトでは完全なデータをダウンロードするために Cookie が必要です。 JSL ログインを通じて Cookie を取得し、データをダウンロードするにはどうすればよいですか?
ありがとう!
VBA
Sub Post()
Dim User_agent, Response_Text, username, password, cookie, json
username = [d1]: password = [f1]
User_agent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36"
Post_data = "return_url=https%3A%2F%2Fwww.jisilu.cn%2Fdata%2Fcbnew%2F&user_name=" & jslencode(username) & "&password=" & jslencode(password) & "&aes=1&auto_login=0"
With CreateObject("WinHttp.WinHttpRequest.5.1")
.Open "get", "https://www.jisilu.cn/login/", False
.setrequestheader "User-Agent", User_agent
.send
.Open "post", "https://www.jisilu.cn/webapi/account/login_process/", False
.setrequestheader "User-Agent", User_agent
.setrequestheader "Content-Type", "application/x-www-form-urlencoded; charset=UTF-8"
.send (Post_data)
cookie = Split(.getallresponseheaders, "Set-Cookie: ")(2)
.Open "get", "https://www.jisilu.cn/data/cbnew/detail_hist/" & ([b1] & ""), False
.setrequestheader "User-Agent", User_agent
.setrequestheader "cookie", cookie
.send "fprice=&tprice=&curr_iss_amt=&volume=&svolume=&premium_rt=&ytm_rt=&rating_cd=&is_search=N&market_cd%5B%5D=shmb&market_cd%5B%5D=shkc&market_cd%5B%5D=szmb&market_cd%5B%5D=szcy&btype=&listed=Y&qflag=N&sw_cd=&bond_ids=&rp=50&page=1"
Response_Text = .responsetext
Set json = JsonConverter.ParseJson(Response_Text)
End With
End Sub自動化とスクリプト作成品質およびプロセスエンジニアリングウィンドウズ