ID:273947

阿尘

爬虫工程师

  • 公司信息:
  • 北京华迪计算机技术有限公司
  • 工作经验:
  • 1年
  • 兼职日薪:
  • 500元/8小时
  • 兼职时间:
  • 可工作日远程
  • 所在区域:
  • 北京
  • 海淀

技术能力

掌握爬虫基础,包括HTTP基本原理、web网页基础、爬虫的基本原理、代理基本原理、多线程多进程基本原理。
掌握基本库的使用,包括urllib、requests、正则表达式、httpx。
掌握网页数据解析提取,包括XPath、BeautifulSoup、pyquery等。
掌握数据存储,包括TXT文本存储、JSON文件存储、CSV文件存储、MYSQL和MongoDB存储。
Ajax数据爬取和异步爬虫,JavaScript动态渲染页面爬取。

项目经验

用电影网站https://spa2.scrape.center/做示例

我们仔细观察每部电影的URL和Ajax请求API,
例如点击《霸王别姬》,观察URL的变化

可以看到,电影详情页的URL和首页的不一样,
在图2-13 中,URL里的detail后面 直接跟的是id,是1、2、3等数字
但是这里变成了一个长字符串,看着是由Base64编码而成,
也就是说详情页的URL中包含 加密参数,所以我们无法直接根据规律构造详情页的URL

然后,依次点击列表页的第一页到第十页,观察Ajax请求,

可以看到,这里接口的参数多了一个token字段,而且每次请求的token都不同,
这个字段看着同样是由Base64编码而得
更棘手一点的是,API具有时效性,意味着把Ajax接口内URL复制下来,
短期内是可以访问的,但过段时间就访问不了了,会直接返回401状态码

之前我们可以直接用requests构造Ajax请求,但现在Ajax请求接口中带有token,
而且还是可变的。
我们不知道token的生成逻辑,就没法直接构造Ajax请求来爬取数据,怎么办呢?

先分析出token的生成逻辑,再模拟Ajax请求,是一个办法,
可这个办法相对较难,
此时我们可以用Selenium绕过这个阶段,直接获取JavaScript最终渲染完成
的页面源代码。再从中提取数据即可

之后我们要完成如下工作。

通过Selenium遍历列表页,获取每部电影的详情页URL
通过Selenium根据上一步获取的详情页URL 爬取每部电影的详情页
从详情页中提取每部电影的名称、类别、分数、简介、封面等内容

职责
准备Chrome浏览器并配置好ChromeDriver。
成功运行python和用selenium打开Chrome浏览器。
爬取列表页,详情页,数据存储。

案例展示

  • 爬取电影网站详情信息

    爬取电影网站详情信息

    用电影网站https://spa2.scrape.center/做示例 我们仔细观察每部电影的URL和Ajax请求API, 例如点击《霸王别姬》,观察URL的变化 可以看到,电影详情页的URL和首页的不一样, 在图2-13 中,URL里的detail后面 直接跟的

  • 二手房数据可视化

    二手房数据可视化

    饼状图显示各区二手房数量所占比。 创建cleaning_data()方法,在该方法中首先读取“二手房数据.csv”文件并创建DataFrame临时表格,然后将数据中的索引列、空值以及数据中的无效值删除,再将房子单价数据类型转换为float类型,最后将清洗后的数据返回。 创建s

查看案例列表(含更多 0 个案例)

信用行为

  • 接单
    0
  • 评价
    0
  • 收藏
    0
微信扫码,建群沟通

发布任务

企业点击发布任务,工程师会在任务下报名,招聘专员也会在1小时内与您联系,1小时内精准确定人才

微信接收人才推送

关注猿急送微信平台,接收实时人才推送

接收人才推送
联系需求方端客服
联系需求方端客服