自动登录网站

automatic login to a website

本文关键字:网站 登录      更新时间:2023-09-26

我有一个第三方网站,我的客户希望我登录,以便定期下载一些数据。
数据是特定于客户的,并且受密码保护。我有用户名/密码,我已经搜索了自动登录的方法,以便我可以提取数据,但到目前为止还没有成功。这是我尝试过的一种方法:http://crunchify.com/automatic-html-login-using-post-method-autologin-a-website-on-double-click/

当我进入网站的登录页面,我试图登录(查看源代码),我没有看到登录表单,但如果我点击"检查元素"在chrome上的页面的字段它确实显示有一个登录表单隐藏在那里。任何建议

编辑:
这里是网站,我需要自动登录到:http://portal.dorad.co.il/#/Login不幸的是,它不是在英语。第一个字段是用户名,第二个字段是密码,按钮是登录

Edit2:
根据pomeh的建议,我能够找到在修改文本框时被触发的jQuery代码。现在我想使用element.DomContainer.Eval

手动运行此脚本
(function(n,t){function vi(n){var t=n.length,r=i.type(n);return i.isWindow(n)?!1:1===n.nodeType&&t?!0:"array"===r||"function"!==r&&(0===t||"number"==typeof t&&t>0&&t-1 in n)}function ne(n){var t=li[n]={};return i.each(n.match(s)||[],function(n,i){t[i]=!0}),t}function uu(n,r,u,f){if(i.acceptData(n)){var s,h,c=i.expando,a="string"==typeof r,l=n.nodeType,o=l?i.cache:n,e=l?n[c]:n[c]&&c;if(e&&o[e]&&(f||o[e].data)||!a||u!==t)return e||(l?n[c]=e=tt.pop()||i.guid++:e=c),o[e]||(o[e]={},l||(o[e].toJSON=i.noop)),("object"==typeof r||"function"==typeof r)&&
...
(t=n(this);r=r.not(t),t.removeData(f),r.length||clearTimeout(c)},add:function(t){function s(t,u,e){var s=n(this),o=n.data(this,f);o.w=u!==i?u:s.width(),o.h=e!==i?e:s.height(),r.apply(this,arguments)}if(!u[o]&&this[e])return!1;var r;if(n.isFunction(t))return r=t,s;r=t.handler,t.handler=s}}}(jQuery,this)

我不知道如何激活它并给它相关的数据。

如果您有正确的技术需求组合,那么您需要单点登录(SSSO)。

不是我所有的客户端都有SSL,我不想让我的用户名和密码出现在他们所有的网站上。然而,它们都在同一台服务器上。因为我的网站支持SSL,所以我可以安全地登录到我自己的网站。

从概念上讲,您需要做的是记录管理员帐户的IP以及数据/时间戳。然后,如果您从相同的IP访问客户端的网站(同样,在同一台服务器上),您可以使用脚本语言检查文件。我需要一个短的时间跨度(30秒到两分钟之间的任何地方)和相同的IP地址。当然,您可以添加额外的技术要求来加强安全性,但您的选择将受到限制,因为域名将不同。如果IP符合标准,则模拟正在进行身份验证的用户(显然是静态的,因为您可能不会/不应该在他们的站点上拥有您的管理帐户信息),然后您可以自动登录。

也许你可以使用web抓取框架:

    Goutte for PHP (https://github.com/fabpot/goutte)scscrapy for Python (http://scrapy.org/)
  • 节点。(https://github.com/chriso/node.io)
  • 请求Node.js (https://github.com/mikeal/request)
  • .Net (http://watin.org/)

无论如何,我认为一个客户端的解决方案会带来很多问题。也许您可以使用指向该页的form标记登录到它,但之后您将无法操作该页。此外,由于CORS限制,您可能无法使用AJAX。您可以将目标页面作为iframe嵌入,但由于使用了不同的域,因此无法操作该页面(在某些条件下可以这样做,但很难实现这一点)。所以我觉得服务器端解决方案更好。