From 7e358885e717693e1d26ecb8d4abfdf2d90fae5e Mon Sep 17 00:00:00 2001 From: chenlong Date: Mon, 6 Dec 2021 15:03:45 +0800 Subject: [PATCH] add question --- .../config.json" | 2 +- .../simulate_login.json" | 6 ++++ .../simulate_login.md" | 31 +++++++++++++++++++ .../6.Selenium/config.json" | 2 +- .../6.Selenium/selenium.json" | 6 ++++ .../6.Selenium/selenium.md" | 31 +++++++++++++++++++ .../config.json" | 2 +- .../pyspider.json" | 6 ++++ .../pyspider.md" | 31 +++++++++++++++++++ .../config.json" | 2 +- .../verification_code.json" | 6 ++++ .../verification_code.md" | 31 +++++++++++++++++++ 12 files changed, 152 insertions(+), 4 deletions(-) create mode 100644 "data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/11.\346\250\241\346\213\237\347\231\273\345\275\225/simulate_login.json" create mode 100644 "data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/11.\346\250\241\346\213\237\347\231\273\345\275\225/simulate_login.md" create mode 100644 "data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/6.Selenium/selenium.json" create mode 100644 "data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/6.Selenium/selenium.md" create mode 100644 "data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/8.pyspider\346\241\206\346\236\266\347\232\204\344\275\277\347\224\250/pyspider.json" create mode 100644 "data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/8.pyspider\346\241\206\346\236\266\347\232\204\344\275\277\347\224\250/pyspider.md" create mode 100644 "data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/9.\351\252\214\350\257\201\347\240\201\345\244\204\347\220\206/verification_code.json" create mode 100644 "data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/9.\351\252\214\350\257\201\347\240\201\345\244\204\347\220\206/verification_code.md" diff --git "a/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/11.\346\250\241\346\213\237\347\231\273\345\275\225/config.json" "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/11.\346\250\241\346\213\237\347\231\273\345\275\225/config.json" index d8195cd..f786015 100644 --- "a/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/11.\346\250\241\346\213\237\347\231\273\345\275\225/config.json" +++ "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/11.\346\250\241\346\213\237\347\231\273\345\275\225/config.json" @@ -1,5 +1,5 @@ { - "export": [], + "export": ["simulate_login.json"], "keywords": [], "children": [ { diff --git "a/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/11.\346\250\241\346\213\237\347\231\273\345\275\225/simulate_login.json" "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/11.\346\250\241\346\213\237\347\231\273\345\275\225/simulate_login.json" new file mode 100644 index 0000000..2ffcdc9 --- /dev/null +++ "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/11.\346\250\241\346\213\237\347\231\273\345\275\225/simulate_login.json" @@ -0,0 +1,6 @@ +{ + "author": "zxm2015", + "source": "simulate_login.md", + "depends": [], + "type": "code_options" + } \ No newline at end of file diff --git "a/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/11.\346\250\241\346\213\237\347\231\273\345\275\225/simulate_login.md" "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/11.\346\250\241\346\213\237\347\231\273\345\275\225/simulate_login.md" new file mode 100644 index 0000000..7f5b7ce --- /dev/null +++ "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/11.\346\250\241\346\213\237\347\231\273\345\275\225/simulate_login.md" @@ -0,0 +1,31 @@ +# 模拟登陆 + +一些网站需要登录之后才能浏览网站的其他内容,爬虫需要拥有登录获取cookie/session的能力才能继续采集数据,以下关于说法错误的是: + + + +## 答案 + +``` +登录成功后获取的cookie一般来说永久有效 +``` + +## 选项 + +### A + +``` +模拟登陆需要先注册网站的账号,或者多注册一些账号来维护一个cookies池 +``` + +### B + +``` +获取登录页面,可以从登录按钮处获取到登录的url +``` + +### C + +``` +登录成功后获取到cookie,其他请求带上cookie就可以获取到请求的页面资源 +``` diff --git "a/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/6.Selenium/config.json" "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/6.Selenium/config.json" index 3c27a36..2e36a9e 100644 --- "a/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/6.Selenium/config.json" +++ "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/6.Selenium/config.json" @@ -1,5 +1,5 @@ { - "export": [], + "export": ["selenium.json"], "keywords": [], "children": [ { diff --git "a/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/6.Selenium/selenium.json" "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/6.Selenium/selenium.json" new file mode 100644 index 0000000..318d6af --- /dev/null +++ "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/6.Selenium/selenium.json" @@ -0,0 +1,6 @@ +{ + "author": "zxm2015", + "source": "selenium.md", + "depends": [], + "type": "code_options" + } \ No newline at end of file diff --git "a/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/6.Selenium/selenium.md" "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/6.Selenium/selenium.md" new file mode 100644 index 0000000..d5af05b --- /dev/null +++ "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/6.Selenium/selenium.md" @@ -0,0 +1,31 @@ +# selenium + +Selenium是web自动化测试工具集,爬虫可以利用其实现对页面动态资源的采集,对于其这种说法错误的是: + + + +## 答案 + +``` +selenium和requests一样,都能用来采集数据,具有同等的速度 +``` + +## 选项 + +### A + +``` +页面执行js才能呈现的内容,可以使用selenium来协助采集 +``` + +### B + +``` +selenium本质是驱动浏览器来发送请求,模拟浏览器的行为 +``` + +### C + +``` +请求之后往往需要等待一段时间,等待资源加载渲染完成 +``` diff --git "a/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/8.pyspider\346\241\206\346\236\266\347\232\204\344\275\277\347\224\250/config.json" "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/8.pyspider\346\241\206\346\236\266\347\232\204\344\275\277\347\224\250/config.json" index 6fe9057..f0c7395 100644 --- "a/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/8.pyspider\346\241\206\346\236\266\347\232\204\344\275\277\347\224\250/config.json" +++ "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/8.pyspider\346\241\206\346\236\266\347\232\204\344\275\277\347\224\250/config.json" @@ -1,5 +1,5 @@ { - "export": [], + "export": ["pyspider.json"], "keywords": [], "children": [ { diff --git "a/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/8.pyspider\346\241\206\346\236\266\347\232\204\344\275\277\347\224\250/pyspider.json" "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/8.pyspider\346\241\206\346\236\266\347\232\204\344\275\277\347\224\250/pyspider.json" new file mode 100644 index 0000000..8192d3a --- /dev/null +++ "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/8.pyspider\346\241\206\346\236\266\347\232\204\344\275\277\347\224\250/pyspider.json" @@ -0,0 +1,6 @@ +{ + "author": "zxm2015", + "source": "pyspider.md", + "depends": [], + "type": "code_options" + } \ No newline at end of file diff --git "a/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/8.pyspider\346\241\206\346\236\266\347\232\204\344\275\277\347\224\250/pyspider.md" "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/8.pyspider\346\241\206\346\236\266\347\232\204\344\275\277\347\224\250/pyspider.md" new file mode 100644 index 0000000..0f323a8 --- /dev/null +++ "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/8.pyspider\346\241\206\346\236\266\347\232\204\344\275\277\347\224\250/pyspider.md" @@ -0,0 +1,31 @@ +# pyspider + +Pyspider与Scrapy都可以用来爬取数据,关于他们的说法错误的是: + + + +## 答案 + +``` +Scrapy提供了web界面,可以用来调试部署 +``` + +## 选项 + +### A + +``` +Pyspider提供了web界面,可以进行可视化调试 +``` + +### B + +``` +初学者如果想快速入门爬取一个新闻网站,推荐使用Pyspider +``` + +### C + +``` +Scrapy的可扩展程度更高,主要用来应对一些复杂的爬取场景 +``` diff --git "a/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/9.\351\252\214\350\257\201\347\240\201\345\244\204\347\220\206/config.json" "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/9.\351\252\214\350\257\201\347\240\201\345\244\204\347\220\206/config.json" index bbb3287..b579bd2 100644 --- "a/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/9.\351\252\214\350\257\201\347\240\201\345\244\204\347\220\206/config.json" +++ "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/9.\351\252\214\350\257\201\347\240\201\345\244\204\347\220\206/config.json" @@ -1,5 +1,5 @@ { - "export": [], + "export": ["verification_code.json"], "keywords": [], "children": [ { diff --git "a/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/9.\351\252\214\350\257\201\347\240\201\345\244\204\347\220\206/verification_code.json" "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/9.\351\252\214\350\257\201\347\240\201\345\244\204\347\220\206/verification_code.json" new file mode 100644 index 0000000..5e98e3b --- /dev/null +++ "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/9.\351\252\214\350\257\201\347\240\201\345\244\204\347\220\206/verification_code.json" @@ -0,0 +1,6 @@ +{ + "author": "zxm2015", + "source": "verification_code.md", + "depends": [], + "type": "code_options" + } \ No newline at end of file diff --git "a/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/9.\351\252\214\350\257\201\347\240\201\345\244\204\347\220\206/verification_code.md" "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/9.\351\252\214\350\257\201\347\240\201\345\244\204\347\220\206/verification_code.md" new file mode 100644 index 0000000..81ea22f --- /dev/null +++ "b/data/2.python\344\270\255\351\230\266/3.\347\275\221\347\273\234\347\210\254\350\231\253/9.\351\252\214\350\257\201\347\240\201\345\244\204\347\220\206/verification_code.md" @@ -0,0 +1,31 @@ +# 爬虫验证码 + +验证码是用来区分人和机器的一种方式,以下关于验证码的说法错误的是: + + + +## 答案 + +``` +验证码的识别是一个老话题,已经做到了100%的识别率 +``` + +## 选项 + +### A + +``` +验证码的种类繁多,包括中英混合,点选,滑动等等 +``` + +### B + +``` +验证码识别要使用到OCR(Optical Character Recognition)技术 +``` + +### C + +``` +对于有难度的验证码,可以对接打码平台或者第三方平台提供的识别服务 +``` -- GitLab