课程背景
在软件和资讯技艺服务业中,资料已成为公司决策和营运精进的核心资产。公司业务的中后端、营运、财务等等岗位人员日常面临大量资料采集诉求:营运需要监控竞品动态、抓取用户评论。财务需要自动收集公开财报、税率或者业界对标资料;中后端需要整合供给链资讯、库存状态或者API资料。可是,传统手工复制粘贴效率低下、易出错,而公司又缺乏一套面向非技艺人员的系统资料采集培训。本课专为业务侧人员规划,避开纯编程的陡峭研习曲线,采用“分层教学”打法:零基础参训者从可视化爬虫抓手入手,有Python基础的参训者可进一步掌握轻量级脚本。借助实战,支援参训者构筑合法、高效、可落地的资料采集本领,真正达成“从0到1”的业务进阶。
课程收益
1、掌握爬虫核心原理和法律合规边界,能独立判断资料采集的可行性。
2、弄懂Python基础和Requests+BeautifulSoup,落地时,能够编写简单的自定义爬虫脚本。
3、熟练采用Chrome开发者抓手以及Web Scraper插件,无需编程即可完成常见网站的资料抓取和导出。
4、学会处理分页、动态加载,简单反爬措施(User-Agent伪装、延时等等);能够将爬取资料保存为Excel/CSV,并开展基础清洗。
5、借助两个完整实战项目(竞品价格监控、财报资料采集),直接运用于自身业务情境。
6、获得一套可复用的爬虫模板和后续进阶研习路径。
课程大纲
一、业务情境驱动:为何要学爬虫
1. 营运人员的痛点实例:某SaaS公司营运每周需要从5个竞品官网收集价格和功能列表,在实际应用里,手工复制耗时6小时,并且容易遗漏。爬虫可将其压缩至15分钟。交流破冰:大家事务中哪些资料经常需要重复收集?
2. 财务人员的诉求实例:月度业界报告需收集多家上市公司营收资料,手工翻阅PDF报表效率极低。爬虫自动抓取要害表格,一键生成对比。
3. 中后端人员的运用实例:对接多个供应商的库存接口前,就一线经验说,用爬虫抓取公开的库存页面作为原型验证。
二、爬虫为何:原理和流程
1. 还原浏览器请求HTTP请求和响应(GET/POST),“在地址栏输入网址后按照回车”。
2. 获取响应内容HTML网页源码和JSON资料结构,采用浏览器“查看网页源代码”功能直观感受。
3. 拆解提取资料从杂乱的文本中定位标的资讯,“从抽屉里找到需要的文件”。
4. 存储结构化资料将资料整理成表格(CSV/Excel),便于后续拆解。
三,法律和伦理红线(重点)
1. Robots协议解读robots.txt 示例(如淘宝、豆瓣),何为“允许爬取的路径”。交流情境:分组碰头一个真实网站(如某招聘平台)的robots.txt,往细里说,判断哪些页面可爬。
2. 反爬和侵权的边界用户隐私资料(手机号、地址)绝 对禁止;版权内容(文章、图片)需注意放权。实例:某公司因高频爬取友商价格被发律师函,往细里说,重点在于请求频率过高导致对方服务器压力。
3. 合理采用要则建议:将控请求间隔(1-2秒/次),防止并发;只爬公开资料;遵守标的网站的声明。
四、爬虫抓手概览:从零代码到低代码
1. 浏览器开发者抓手入门F12打开,Elements和Network标签,运行层面,怎样查看某个资料对应的网络请求。实操:打开任意新闻网站,在实际应用里,找到一条新闻标题对应的HTML代码。
2. 零代码抓手:Web Scraper插件Chrome插件方式,实操中,无需安装任何编程环境,点击选项即可抓取。
3. 低代码抓手:Python简介最简单的requests.get()示例,感知代码爬虫的本领边界。
一、环境搭建和插件安装
1. Chrome浏览器以及Web Scraper安装从Chrome网上运用店安装,或者离线安装包。查验安装:在开发者抓手中出现“Web Scraper”标签。
2. 界面认识Sitemap(站点地图):一个爬虫项目。Selector(选项器):定义要抓取的元素。创建第 一个Sitemap。
二,第 一个爬虫:抓取新闻标题
1. 创建Sitemap,落地时,往细里说,定义起始URL以某新闻网站为例(quotes.toscrape.com以及http://books.toscrape.com)。实操:“Create new sitemap”->“Create sitemap”->输入名称起始URL。
2. 采用Selector选取元素(点击模式)添加Selector,类型选项“Text”,落地时,“Select”后自动生成CSS选项器。保存并测试(Test selector)验证提取标题。
3. 启动爬取和导出CSV“Scrape”按照钮,往细里说,落地时,设置请求间隔(1000毫秒),换个角度看,等待爬取完成。导出为CSV文件,用Excel打开查看。实地操练:每个参训者独立完成新闻标题爬取,并导出资料。
三,进阶选项器:列表页和详情页
1. 元素嵌套:抓取列表页中每条记录的多个字段以图书列表页为例
2. 分页处理:识别“下一页”链接添加Link Selector,往细里说,定位“Next”,落地时,勾选“Multiple”以自动跟踪分页。爬取多页图书资料。
3. 详情页链接抓取:Link selector情境:列表页只显示摘要,需进入详情页抓取更多内容(如ISBN号,描述)。办法:创建Element Selector(代表每条记录),往细里说,从实践看,内部添加Link Selector指向详情页URL,执行层面,在Link Selector下创建子Selector抓取详情页内的字段。实例:抓取招聘网站职位列表中的职位描述(进入详情页)。交流情境:展示一个复杂网站,参训者分组碰头规划Sitemap的结构。
四,往细里说,动态页面处理和等待
1. 延时设置和滚动加载网站需要滚动到底部才加载更多内容。Web Scraper中设置“Scroll down”动作。演示抓取微博(或者类似无限滚动页面)的博文。
2. 点击经过还原(Element click selector)情境:点击“加载更多”按照钮才能出现新资料。办法:采用“Click”类型Selector,点击标的按照钮并设置重复次数。分组实战:每小组选项一个真实网站,实操中,完成一个包含列表,分页、至少3个字段的爬取差事,运行层面,并将结果导出CSV。讲师巡回指导。
本讲采用分层模式,从实践看,零基础参训者可继续巩固Web Scraper,具体来看,完成进阶实操(抓取带登录的网站思路专题),往细里说,有Python基础或者想挑战的参训者跟随讲师操作。
一、Python环境和基础(迅速通道,仅核心)
1. 安装Anaconda和Jupyter Notebook提供一键安装包,往细里说,怎样启动Notebook。实地演示创建第 一个.ipynb文件,执行层面,落地时,运行print(“Hello”)。
2. 变量,在实际应用里,列表、循环,条件(15分钟闪电复习)列表 = [“苹果”,“香蕉”]。for 水果 in 列表: print(水果)。if 价格 > 100: 跳过。
3. Requests库发起GET请求安装requests:!pip install requests(在Notebook中)。import requests。response=requests.get(“http://quotes.toscrape.com”)。打印response.status_code。
4. 状态码和响应文本response.text 输出HTML源码。解说常见的200、404、403状态码含义。
二,资料拆解:BeautifulSoup入门
1. 安装bs4,落地时,落地时,在实际应用里,拆解HTMLfrom bs4 import BeautifulSoup。soup = BeautifulSoup(response.text, “html.parser”)。
2. find和find_all办法借助标签名,class,id定位。soup.find_all(“div”,class_=“quote”)。
3. 提取标签文本和属性取文本:.get_text()。取属性:.get(“href”)。实操:爬取http://quotes.toscrape.com所有名言,作者和标签,从实践看,打印出来。实地操练:参训者独立爬取该网站第 一页的10条名言。
三,JSON拆解和API调用
1. 识别网站隐藏的API接口以豆瓣电影为例:打开开发者抓手 -> Network -> XHR,就一线经验说,刷新页面,找到返回JSON资料的请求。从请求URL直接获取结构化资料,在实际应用里,执行层面,比拆解HTML更方便。
2. 采用requests请求JSON资料import json。data = response.json()。查看data的类型(字典或者列表)。
3. 拆解并提取字段遍历JSON中的结果,落地时,提取电影名称、评分。实例:抓取公开的天气API或者免费股票报价API。
四,资料存储到Excel/CSV
1. 采用csv模块写入import csv。创建writer,从实践看,在实际应用里,写入表头和资料行。
2. 采用pandas迅速保存import pandas as pd。df = pd.DataFrame(资料列表)。df.to_excel(“output.xlsx”, index=False)。实地操练:将刚才爬取的名言资料保存为Excel文件,就一线经验说,具体来看,并用Excel打开查看。
3. 简单资料清洗去重:df.drop_duplicates()。处理空值:df.dropna();替换无效字符。交流情境:提供一份脏资料(含空行、重复、乱码),参训者实地清洗并输出清洁文件。
一,常见反爬制度和化解(重讲打法,往细里说,不深究代码)
1. User-Agent伪装怎样修改requests的headers,就一线经验说,还原真实浏览器。对比:不伪装时可能返回403。伪装后成功。
2. IP代理池思路免费代理和付费代理的区别,往细里说,具体来看,采用proxies参数。
强调:公司级采集建议采用代理服务,实操中,落地时,落地时,但个人研习可跳过。
3. 请求频率将控(time.sleep)import time。time.sleep(随机(1,3))。防止高频请求被封。
4. 验证码处理思路OCR识别(tesseract),人工打码平台(如超级鹰)的适用情境,实操中,尽可能防止触发验证码。交流问答:参训者分享自己遇到的验证码类型,碰头是否值得攻克。
二、实战项目一:营运情境——竞品价格监控
1. 诉求拆解某营运需要每天监控3个竞品在某电商平台的价格,换个角度看,并记录变化趋势。要求自动生成价格变动报告。
2. 达成步骤(采用Web Scraper或者Python)Web Scraper:创建Sitemap,在实际应用里,就一线经验说,抓取商品名称、价格、时间戳,换个角度看,手动每日运行。Python:编写脚本,具体来看,加入定时差事(Windows规划差事或者cron),换个角度看,结果追加到CSV。
3. 资料变化可视化用pandas读取历史价格,往细里说,用matplotlib绘制折线图。分组碰头:每组规划一个监控方案(选什么网站,抓取频率、异常告警方式),选派代表分享。
三,在实际应用里,实战项目二:财务情境——上市公司财报资料采集
1. 从巨潮资讯网抓取公开年报中的要害指标巨潮资讯网(www.cninfo.com.cn)提供上市公司公告,并且robots.txt允许合理爬取。标的:抓取公司2025年年报中的“营业收入”“归属于母公司净利润”“基本每股收益”。
2. 达成办法办法一:采用Web Scraper先找到公告列表,换个角度看,再进入PDF页面(本课仅抓取公告标题和发布日期)。办法二:寻找该网站是否有JSON接口(如巨潮的公告搜索API)。借助开发者抓手抓取API请求,直接获取结构化公告资料。办法三:对于简单表格,运行层面,执行层面,可采用pandas的read_html直接提取页面中的表格。
3. 采用pandas开展多表格合并假定抓取了多家公司资料,落地时,用pd.concat合并,并计算业界平均值。分组实操:每个小组选项一个公开资料源(国家统计局、交易所公告、电影票房),落地时,完成爬取并输出一份不少于20条记录的资料集,以及一个简单的统计指标(平均值、总数)。要求采用本课所学任意抓手(Web Scraper或者Python),时间约30分钟。
四、结晶展示和问题复盘
1. 每组5分钟演示爬取结果展示抓取的资料截图,CSV文件内容,并说明业务意义。
各组提问,点评亮点和可改进点。
2. 常见错误和精进建议选项器失效(网站改版)——怎样化解:定期查验,往细里说,采用更稳健的选项器。被封IP——降低频率,采用代理或者更换打法。资料乱码——指定UTF-8编码。动态页面未加载——改用Selenium(作为后续进阶学识简单提以及)。
课程收束和进阶研习路径
1. 从基础爬虫到爬虫轮廓Scrapy概览Scrapy的优势(高并发,去重、中间件)。不展开代码,展示一个官方示例。
2. 资料清洗和可视化衔接推荐后续研习pandas,matplotlib、Power BI等等,执行层面,形成资料价值链。
3. 公司级资料采集规范建议构筑内部爬虫申请制度,实操中,明晰爬取范围、频率、存储责任,实操中,定期复查合规性。
4. 发放课程资料包:
Web Scraper常用选项器模板、Python示例脚本、法律合规自查清单。
5. 课后交流可构筑课程交流群,讲师提供一个月内在线答疑。
老师简介
Introduction to lecturers
弄懂更多
珀菲特顾问|蔺军老师
适合谁听
软件和资讯技艺服务业公司的业务中后端人员、营运人员、财务人员、以及其他有资料采集诉求的非技艺岗位。参训者无需编程基础、但需具备基本计算机操作本领。。建议同一家企业 3 人以上同来,课堂上直接改造本企业的实际问题——单人参加也能学到方法,但带不走可用的成果。
交付流程
课前:顾问访谈 2 位管理者,收集现状与问题清单,讲师据此调整案例。课中:讲授与演练各占一半,产出可直接用的工具与方案。课后:7 天内提交改进建议,30 天内一次线上答疑。
