高级爬虫是应对反爬的,所以js爬虫是高级水平。
掌握了加密算法且可以将加密的密文进行解密破解的,也是我们从一个编程小白到大神级别的一个质的飞跃,且加密算法的熟练程度和剖析也是有助于我们实现高效的js逆向。
纯粹前端的js 是不能 跨域 获取 cookie的xxx.com 的js 代码 只能得到 xxx.com的cookie,拿不到 yyy.com
当然如果你有办法 在 yyy.com 写入受到自己控制的 html文件,你就可以写代码去拿到 对应的cookie,但看你的需求 应该你没有yyy.com 的权限
所以 要结合其他方案,推荐一下两种:
使用 electron ,electron 你可以认为是受js控制的浏览器引擎,所以你可以用它访问 yyy.com 拿到cookie,再接着做你的事情
或者 使用 puppeteer(Google 官方出品的 headless Chrome node 库)
Puppeteer 提供了一系列的 API,可以在无 UI 的情况下调用 Chrome 的各种功能,适用于爬虫、自动化处理等各种情景。
对于这种动态加载的网站,建议使用第三方库selenium爬取。它可以完全模拟浏览器,等待网站全部加载完成后再进行数据的自动获取。
对于主流的ChromeDriver、InternetExplorerDriver、FirefoxDriver、OperaDriver都支持,网站上的元素也支持多种选择器,如class、id、xpath等。
但是用习惯以后,对于这种非纯静态页面,离开selenium感觉就完全不会爬虫了。