以下是一些该课程学习中,难以在网上找到答案,自己的分析,
如有不恰当之处,还请批评指正!
----------------------------------------------------------------------------
1-6 浏览器抓包及headers设置(案例一:抓取知乎)
课后思考:今日头条的翻页方式?
打开官网,https://www.toutiao.com/,可以看到没有翻页按键,页面下拉到7个新闻后,加载更新新的新闻,
页面url没有变化,经验证是ajax加载。
按照步骤(network → clear → 下拉至页面更新),发现几个XHR参数max_behot_time变化有规律。
而双击进该页面,显示中文为unicode编码。
所以找到了今日头条的翻页方式,及其真实请求页面。并且建议只在preview里看内容比较方便。(有几次直接双击进源页面发现一堆英文没反应过来。。。然后就miss掉了。。。)
----------------------------------------------------------------------------
1-7 数据入库及MongoDB(案例二:爬取拉勾)
关于win7系统下(win10目前没有尝试)高版本MongoDB无法在 localhost:27017或localhost:28017 访问的问题(或页面无法正常显示)
上图是已验证正常安装启动后,在27017端口显示的信息,同教程一致。
尝试网上大量教程无果后,看到有人说低版本没事,于是换了低版本3.4.13来装
安装过程中,安装程序有要求防火墙不对MongoDB有限制,而之前安装高版本没有提示这个选项,所以分析应该是防火墙的问题。
关于配置MongoDB教程的其他问题:
配置MongoDB的路径自己可以试着改一下,熟悉一下命令行都传进了哪些参数。
除了创建data\db还要data\log。
一定要以管理员身份运行cmd,点开开始菜单搜索cmd然后右键以管理员身份运行。
net start mongodb (开启)
net stop mongodb (关闭)
使用robo以及pycharm的插件 连接MongoDB之前需先通过cmd开启数据库,开启一次就ok,重启后也能连接。
课后作业:爬取职位详情页
其实打开详情页分析url就有头目了。
我们进原来职位列表的源码中搜索后面这个id号,发现出现了两次,一次是职位对应的hr信息。
另一次才是对应的职位。
所以只需要爬取url='https://www.lagou.com/jobs/'+id号+'.html' 对应的信息即可。
关于modheader的使用:
经过测试,modheader可以方便的伪装成移动端,然后对网页爬取。modheader是以key-value形式保存ua信息的,使用哪个头可以点击打钩选上。如下图所示。
然后f5刷新一下页面就发现页面已经变成移动端了。
我们可以看到右下角ua信息已经变成iphone信息的了。
关于ua信息的查询,目前网上已经有许多小白的网页可以在线获取你手机的ua信息,以及其他手机的ua信息,百度上搜一下ua查询即可。还得注意的是,modheader里ua的name一定要写User-Agent,否则modheader无法对浏览器的request的ua无法覆盖和替换。
关于无法在 m.weibo.cn 或 weibo.cn 登录账号进微博的问题:
经过尝试,首先在不伪装移动端header时进入weibo.com页面。
然后选择modheader中伪装移动端header,后再进行登录,登录成功。
然后就可以登录进来,可以看到找到了微博评论的真实请求页面。(图片看不清可以点击图片放大)
----------------------------------------------------------------------------