我想从一个aspx网站上取一个csv
。没有到csv
的直接链接,它是在发布表单时由服务器生成的。你知道吗
以下内容在使用UrlFetchApp的Google App脚本中正常工作:
它返回原始的.csv
数据。你知道吗
..// other code omitted for brevity
var page = UrlFetchApp.fetch(
"https://www.mycompanyurl.com/summary.aspx", {
"method": "POST",
"headers": {"Cookie": myCookieData},
"payload": {
'_ctl0:contact:isActive': '1',
'__VIEWSTATE': myViewstateData,
'__EVENTTARGET': '_ctl0:Main:ButtonExport',
'__EVENTARGUMENT': '',
'__LASTFOCUS': '',
'__VIEWSTATEENCRYPTED': '',
'__PREVIOUSPAGE': ''
}
});
Logger.log(page); // <---- prints the csv file content
我尝试在python请求库中模拟这个。你知道吗
..// other code omitted for brevity
..// cookies are in the session 's'
page = s.post(
'https://www.mycompanyurl.com/summary.aspx',
data={
'_ctl0:contact:isActive': '1',
'__VIEWSTATE': myViewstateData,
'__EVENTTARGET': '_ctl0:Main:ButtonExport',
'__EVENTARGUMENT': '',
'__LASTFOCUS': '',
'__VIEWSTATEENCRYPTED': '',
'__PREVIOUSPAGE': ''
}
);
print(page) // <---- prints the html content of the page
我省略了另外两个我尝试过的库,结果都是一样的。轴心(节点.js)和请求(节点.js)你知道吗
为什么这个请求在googlescript上有效,而在其他更流行的库中却不起作用。你知道吗
可能我遗漏了一些简单的东西,但是在尝试了很多小时不同的头配置和多个库之后,我不知所措。你知道吗
我看到的两个代码片段之间的第一个区别是,您没有将cookie传递到Python版本中。你知道吗
如果您查看一下得到的HTML响应,这将是有益的。可能有一些错误消息(例如:请登录)。你知道吗
试试adding your cookies to the request,看看这是否有帮助。你知道吗
相关问题 更多 >
编程相关推荐