鲁棒之类的先不说,刚刚终于把爬虫最基本的登录网站做好了。简单记一下还记得的错误点。
识别图片这一块遇到了问题,原因是nodejs的axios要求指定responseType,而python的requests似乎根据一些信息自动将responseType设置好了(也许是header['Accept'])。要改正的话,只要在下载验证码图片的axios的config中设置responseType: ‘arraybuffer’就好了。'stream'的话感觉不太方便。
然后是js对象的字符串化遇到了问题,应该用JSON.stringify(str)。随便某个对象不能用.toString(),可能是因为该方法没有默认实现。 但是,我在使用JSON.stringify之后还是错的,这是因为content-type应当设置为application/x-www-form-urlencoded,使用JSON则是JSON格式的字符串。 在这种情况(x-www-form-urlencoded)下,使用axios.post,参数data应该用qs.stringify(对象)。 参数config就用{}写个对象放进去就好了。 withCredentials实际上没用到。