gpt4 book ai didi

javascript - 复制 Netflix 登录并生成 cookie

转载 作者:行者123 更新时间:2023-12-04 00:09:48 25 4
gpt4 key购买 nike

由于不再有官方公开的 Netflix API,我正在尝试自行逆向工程一些东西。但我有点卡在登录界面了。

我在做什么:

  1. https://www.netflix.com/Login 上获取请求
  2. 按照重定向以结束类似/Login?locale=en-DE 的内容
  3. 提取 authURL 值(稍后登录 POST 需要)
  4. https://assets.nflxext.com/us/ffe/siteui/logging/clientNotifications.min.20150626.js 上获取请求
  5. [失败] 从该 JavaScript 的内容生成并设置“cL”cookie
  6. https://www.netflix.com/Login?locale=en-DE 上发布请求使用以下正文格式:authURL=EXTRACTED_AUTH_URL&email=YOUR_EMAIL&password=YOUR_PASSWORD&RememberMe=on

我认为登录失败,因为我无法获取“cL”cookie 的数据。对于每个请求,我都使用与 Internet Explorer 完全相同的请求 header 。

所以我正在寻找一种从该 JavaScript 获取数据的方法。可能使用正则表达式?但是那个 JavaScript 是如此的精简和不可读。 :/一些变量如 appId 和 sessionId 仍然是可读的,但是所有函数和其他东西除了 a、b、c 之外没有其他名称。我尝试使用调试器来遍历该代码,但这对我的大脑来说只是一种方式。

这里有一些额外的注意事项:

  • 我不想使用浏览器登录 Netflix 网站。
  • 我想以编程方式登录 Netflix。 (这就是我在 Stackoverflow 上问这个问题的原因)。
  • 我不想编写 JavaScript 应用程序,而且我从来没有说过我想要,事实上我什至不知道我将使用哪种编程语言来实现它。
  • 我不想写浏览器。
  • 我花了好几个小时记录/逆向工程登录请求。 (我使用了 Fiddler 和 IE 的开发工具。)
  • 我不打算用这个做任何违法的事情,这只是一个私有(private)项目。

最佳答案

您正在寻找的是 Web Scraping/Web Crawling。

正如 gregswiss 指出的那样,您可以使用 .NET 中的 WebBrowser 组件来完成,但您也可以使用:

Python:Scrapy(最流行的网络抓取工具,还有很多教程)

Javascript:Casper JS(依赖于 Phantom JS headless 网络浏览器)

Java:Jaunt(这是我的最爱,带有相关示例),或者使用 org.apache.commons.httpclient 编写您自己的网络抓取工具。

PHP:http://www.programminghelp.com/php/basic-web-scraping-regex-php/ http://www.jacobward.co.uk/web-scraping-with-php-curl-part-1/

这是一个使用 jaunt 登录的例子:

try{
UserAgent userAgent = new UserAgent();
userAgent.visit("http://jaunt-api.com/examples/login.htm");

userAgent.doc.fillout("Username:", "tom"); //fill out the component labelled 'Username:' with "tom"
userAgent.doc.fillout("Password:", "secret"); //fill out the component labelled 'Password:' with "secret"
userAgent.doc.choose(Label.RIGHT, "Remember me");//choose the component right-labelled 'Remember me'.
userAgent.doc.submit(); //submit the form
System.out.println(userAgent.getLocation()); //print the current location (url)
}
catch(JauntException e){
System.err.println(e);
}

您可以在此处找到更多示例:http://jaunt-api.com/jaunt-tutorial.htm

关于javascript - 复制 Netflix 登录并生成 cookie,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32337821/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com