requests.exceptions.InvalidHeader: Invalid leading whitespace, reserved character(s), or returncharacter(s) in header value: 'Bearer\nmbKAoZeAlc6AoYB7h4uEobB8e2DKjHbKtc2Dgo+WiJ6aimSeroNjyGOOr4yMhqCHzYOefdKKoK7gtW6Qspakjp6dnoWJiquzhZGqkp+gbIW3aWGJ0oKertC6pISQrmmPno6fhXiDqb6JhrCdZ26wkqeCZ3nQemXDrc+yhH2usY5mf6+CnrCbyXmkrZOIfm2B0o+rir19nq2prqmQkbaghJ5+aIh5kmazdaNrhp+OqoHRj2WTqH1rrrq9bYWj0LGDnoavh56wm8d4cauTrn5tktF/pJOXim6PqK6vqmTRhWCfkpuvimpk0Hprf3KlfH6kmaOoX5Zjf8ao269uj7COi5Ztf7OtnXfUi493bGlqbIWZZJybvoWt2b/SmoKH05ivdYWMnamQm51hjqSpqmmqbtGHZYbNeIGrz7l+iJLKnWRrhoubg62j16Vvf6KOYJyCk6ODqLWLdozHj2t9hMdohJaQonyefYfNcrKNs26peaGTinp9vZasqrO8fIKn32KJipKtkWqDeNOGfqmlfX1wmZZoeZ/YgWaw2rCho7LGiYaHooqlbnGHzaZ7kJCodp+LtrBjl854nNOXzm5on9l6eGRxfY5tnH2seaudcIZ8r4rKfnhkrI6CprW2paOHpqtnaYmsq4eGaJmfaJmPnm14kZSPY3ezZX3b4M1ynZuQsIZph6V2'
后面一大堆是我登录后返回的授权参数,这个授权参数要用到第二次请求中的请求头中,所以我用变量传递到了第二次请求用到的请求中,命名没有空格 为什么还要包报空格问题,哦,对了 那个\n就是授权参数需要的,没有这个报错授权无效,这道理哪里的问题,累死。
通过headers中的user-agent字段来反爬
🔒反爬原理:爬虫默认情况下没有user-agent字段,而是使用模块默认设置。我们在爬取某网站时就会被直接识破是爬虫而不是用户操作!
🔑解决方法:请求之前添加user-agent即可,更好的方式是使用user-agent池来解决(收集一堆的user-agent的方式,或者是随机生成user-agent)!
通过referer字段或者是其他字段来反爬
🔒反爬原理:爬虫默认情况下不会带上referer字段,服务器通过判断请求发起的源头,以此判断请求是否合法。
🔑 解决方法:添加referer字段!
通过cookie来反爬
🔒反爬原理:通过检查cookies来查看发起请求用户是否具备相应权限,以此来进行反爬。
🔑解决方案:进行模拟登录,成功获取cookies之后在进行数据爬取!