|
3 | 3 |
|
4 | 4 | ??? info "前置知识"
|
5 | 5 |
|
6 |
| - 我们期待您已经了解并掌握了 Python 的基础语法以及 Web 相关知识,如果您对此有任何疑问,可以参考: |
| 6 | + 我们期待您已经了解并掌握了 Python/JavaScript 的基础语法以及 Web 相关知识,如果您对此有任何疑问,可以参考: |
7 | 7 |
|
8 | 8 | - [科协技能引导文档 Python 部分](https://docs.net9.org/languages/python/)
|
| 9 | + - [科协技能引导文档 JavaScript 部分](https://docs.net9.org/languages/javascript/) |
9 | 10 | - [科协技能引导文档 Web 部分](https://docs.net9.org/basic/web/)
|
10 | 11 |
|
11 | 12 | 此外,我们还提供了一些 HTTP 相关知识以供参考:
|
|
17 | 18 |
|
18 | 19 | 如果您在阅读本文档时遇到了任何困难或疑问,欢迎在下方评论区提问讨论。当然,您也可以查询相关官方文档或者选择尝试向 ChatGPT 提问。
|
19 | 20 |
|
20 |
| -??? info "环境配置" |
| 21 | +??? info "Python 相关库" |
21 | 22 |
|
22 | 23 | 我们建议您使用 3.10 版本的 Python,您可以通过 pip 包管理工具来安装本文档所需库。如果您此前没有接触过 pip,您可以通过阅读 [Python 包管理](https://docs.net9.org/languages/python/pip/) 这篇文章来进行学习。以下是本文档所需的库:
|
23 | 24 |
|
|
33 | 34 | scrapy
|
34 | 35 | ```
|
35 | 36 |
|
36 |
| -!!! warning |
| 37 | +!!! warning "读前须知与叠甲" |
37 | 38 |
|
38 |
| - 由于本文档所涉及到的所有 Python 库以及所有网页目前仍在不断更新迭代,它们的各项规范以及组织结构可能因时而异,因此**本文档**中的**所有**示例文件、代码和图片仅对笔者机器在当前时间节点(2024年1月)的结果负责。我们相信,根据本文档的教学,在发现本地运行结果与本文档不同时,您有能力辨别正误并对本文档中的示例进行更正。我们也格外欢迎您在评论区及时反馈由于上述更新所带来的问题。 |
| 39 | + 1. 我们建议您先进行配置好环境再进行库使用和实战练习等模块的阅读。一个基础的环境配置方案可以参考 [此仓库](https://github.com/UbeCc/sast-2024-crawler)。 |
| 40 | + 2. 本文中实战样例的编程语言为 Python,如想获取 JavaScript 的爬虫 demo,同样可参考上述仓库。 |
| 41 | + 3. 由于本文档所涉及到的所有库以及所有网页目前仍在不断更新迭代,它们的各项规范以及组织结构可能因时而异,因此**本文档**中的**所有**示例文件、代码和图片仅对笔者机器在当前时间节点(2025年2月)的结果负责。我们相信,根据本文档的教学,在发现本地运行结果与本文档不同时,您有能力辨别正误并对本文档中的示例进行更正。我们也格外欢迎您在评论区及时反馈由于上述更新所带来的问题。 |
39 | 42 |
|
40 | 43 | ## 环境配置
|
41 | 44 |
|
|
55 | 58 |
|
56 | 59 | 在接收到您的请求后,服务器会传回一个 HTML 文件以及一些其他附属文件,最后在浏览器中展现为您现在所阅读的文档。
|
57 | 60 |
|
58 |
| -爬虫是一种可以模拟网页浏览器向网站**发送**并**处理**请求的自动化脚本,帮助我们获得服务器的数据,进而用于其他需求。借助于爬虫,理论上我们可以依照需求处理一切与网络请求有关的内容,比如实现某某网站的抢票、实现某某网站音视频及文字的批量获取。 |
| 61 | +爬虫是一种可以**模拟网页浏览器**向网站**发送**并**处理**请求的自动化脚本,帮助我们获得服务器的数据,进而用于其他需求。借助于爬虫,理论上我们可以依照需求处理一切与网络请求有关的内容,比如实现某某网站的抢票、实现某某网站音视频及文字的批量获取。 |
59 | 62 |
|
60 | 63 | ## 爬前须知
|
61 | 64 |
|
|
81 | 84 | - 当您在高考成绩查询网站上准时查询时。
|
82 | 85 | - 双十一午夜十二点,当您在某网购平台上下单时。
|
83 | 86 | - 周四下午一点,当您在“新清华学堂”公众号上抢 40 元前排学生票时。
|
84 |
| - - 二字班科协迎新会上,当您没搞懂如何抢答,于是反复提交答案导致服务器被干爆时。 |
| 87 | + - 二字班科协迎新会上,当您没搞懂如何抢答,于是反复提交答案导致抢答算法时间复杂度过高的服务器被干爆时。 |
85 | 88 |
|
86 | 89 | 如果服务器处理请求的能力较差,短时间内的大量请求可能导致服务器瘫痪,对服务提供者造成经济损失。故意攻击服务器的行为是违反相关法律法规的,我们要时刻避免这种现象的发生。
|
87 | 90 |
|
@@ -1040,13 +1043,15 @@ Disallow: /
|
1040 | 1043 |
|
1041 | 1044 | 除了本文档之外,您还可以参考:
|
1042 | 1045 |
|
| 1046 | +- [2024年计算机系科协暑培 爬虫讲义](https://summer24.net9.org/backend/crawler/slide.pdf) 以及 [课程回放](https://www.bilibili.com/video/BV1cb421J7u9/?vd_source=a80492aa87f464b5346dca18c3a9e9b3)。 |
1043 | 1047 | - [2023年计算机系科协暑培 爬虫部分](https://summer23.net9.org/backend/crawler/) 以及 [课程回放](https://www.bilibili.com/video/BV1fP41147wS?vd_source=6c45737266d4ed9f41c3a60d96161fdd)。
|
1044 | 1048 | - [2021年计算机系科协暑培](https://www.xuetangx.com/course/THUSAST08091234567890/8571842?channel=i.area.manual_search) (请在学堂在线上加入学习)。
|
1045 | 1049 | - 赵晨阳学长组织编写的为一字班同学提供的 [Python 小学期预习材料](https://github.com/zhaochenyang20/Sino-Japanese-Relations-analysis)。
|
1046 | 1050 | - [Python requests 库官方文档](https://requests.readthedocs.io/en/latest/)
|
1047 | 1051 | - [Python selenium 库官方文档](https://selenium-python.readthedocs.io/)
|
1048 | 1052 | - [Python BeautifulSoup4 库官方文档](https://www.crummy.com/software/BeautifulSoup/bs4/doc/)
|
1049 | 1053 | - [Python scrapy 库官方文档](https://docs.scrapy.org/en/latest/)
|
| 1054 | +- [Node.js 官方网站](https://nodejs.cn/) |
1050 | 1055 | - [Postman 官方网站](https://www.postman.com/)
|
1051 | 1056 |
|
1052 | 1057 | ??? note "写给计算机系大一同学"
|
|
0 commit comments