目的

1)      提取下厨房关键词为(早餐,午餐,晚餐)的菜谱

2)      获取“菜谱链接,图片地址,菜名,材料,七天内多少人做过,作者“,存储到MONGODB

3)      对每个菜谱进行网页截图,保存到本地

2.      目标站点分析

网址:

http://www.xiachufang.com/

输入关键词“早餐”,发现是跳转链接(暂时没想到这种怎么处理比较好,就单独拿出来处理吧)

午餐和晚餐的网址就比较一致

3.      爬取思路(以午餐为例)

1)      根据午餐关键词,组合url,请求得到第一页结果

2)      解析第一页结果,使用正则表达式获取,提取详情页信息和其他信息

3)      根据详情页信息的url获取详情页,截图保存,文件夹使用详情页URL的ID_菜名

4)      改变page参数,获取多页内容

4.      需要处理的

1)      早餐的url独立处理(跳转的url还没学过怎么处理)

2)      有一些菜谱存在综合评分的数字,有些不存在,无法用正则表达式统一提取,待改进

3)      获取的菜谱名和用户名几乎都会存在windows下文件夹不能存在的特殊字符,使用链式replace替换

4)      page用于多线程处理

5)      截图使用selenium和Phantomjs完成,暂时只会截取全屏,还没研究过怎么截取需要的部分

6)      增量更新,包括数据库和网页截图的方法(做法变化或者作者更新删除等的判断),这些还没学会怎么做(虽然现在的爬虫框架比如Scrapy/Pyspider都提供了去重的功能,但是具体实现还没研究过),这是一个造轮子的过程

5.      代码部分

1)      解析每一页,得到“菜谱链接,图片地址,菜名,材料,七天内多少人做过,作者”

2)      解析详情页,并截图

3)      存到MongoDB

4)      开启多线程

以前写个爬虫要1天时间,现在好了一点,2小时能撸完一个简单的爬虫,再接再厉

爬取效果:

18页结果一共运行了5分半钟(4核处理器)

代码地址:

https://github.com/copywang/spiders_collection/tree/master/08_xiachufang

【爬虫】【原创】08 使用简单正则表达式爬取下厨房(早餐,午餐,晚餐)相关推荐

  1. 爬虫项目实操二、爬取“下厨房”网站的菜名、所需材料、和菜名所对应的详情页URL

    项目-爬取"下厨房"网站的菜名.所需材料.和菜名所对应的详情页URL. 它有一个固定栏目,叫做"本周最受欢迎",收集了当周最招人喜欢的菜谱.地址如下: http ...

  2. python3爬虫实战:requests库+正则表达式爬取头像

    python3爬虫实战:requests库+正则表达式爬取头像 网站url:https://www.woyaogexing.com/touxiang/qinglv/new/ 浏览网页:可以发现每个图片 ...

  3. PY爬虫 | 爬取下厨房的本周最受欢迎

    # CY3761 | 2021-10-27 20:03# 爬取下厨房的本周最受欢迎-列表数据 import base64 import os.path from urllib import reque ...

  4. 爬虫从头学之Requests+正则表达式爬取猫眼电影top100

    爬取思路 当我们想要爬取一个页面的时候,我们要保证思路清晰,爬虫的思路分四个步骤,发起请求,获取响应内容,解析内容,存储内容.根据这四个内容我们的思路就很清晰.以下为具体步骤 使用requests库爬 ...

  5. Python爬虫之九:用正则表达式爬取赶集网租房信息

    一.项目分析 1.查询主页和详情页面的关系 得出数据关系:每一个 class 属性为 f-list-item ershoufang-list 的 div 包含着整个需要爬取数据的信息,且查询 ersh ...

  6. Python爬虫实战01:Requests+正则表达式爬取猫眼电影

    1 目标站点的分析 2 流程框架 抓取单页内容 利用requests请求目标站点,得到单个网页HTML代码,返回结果. 正则表达式分析 根据HTML代码分析得到电影的名称.主演.上映.时间.评分.图片 ...

  7. python爬虫(一):正则表达式爬取网页文本

    文章目录 1 正则表达式 2 网页文本爬取 2.1 单页文本 2.2 多页文本 2.2.1 演示文本 2.2.2 文本信息获取 3 实战记录 3.1 网页纯文本处理 3.1.1 常规网页 3.1.2 ...

  8. python网络爬虫之解析网页的正则表达式(爬取4k动漫图片)[三]

    目录 前言 一.正则表达式的学习 1.正则表达式的匹配工具 2.正则表达式的样式 3.正则表达式的案例 二.爬取网页图片 1.分析网页 2.获取数据 爬取妹子网的案例 后记 前言 hello,大家好 ...

  9. python周末吃什么_python爬虫第10关项目周末吃什么(每周五自动爬取下厨房本周最受欢迎的菜谱)...

    目标:我们曾在第3关爬取了下厨房网站中的"本周最受欢迎菜谱",现在,我们完善这个程序,让程序在每个周五爬取数据,并把菜谱发送到我们的邮箱. import requests impo ...

  10. 爬取下厨房网站菜名与食材

    方法一: import requests# 引用requests库from bs4 import BeautifulSoup# 引用BeautifulSoup库 res_foods = request ...

最新文章

  1. 《自然》,工程学突破!仿生物细胞群体机器人问世
  2. Delphi中Tobject与Variant之间的转换
  3. 均线带角度的指标_指标:均线斜率角度计算
  4. 基于JAVA+SpringMVC+Mybatis+MYSQL的网上二手车交易系统
  5. img标签显示不出图片_前端开发,原生 JS 实现最简单的图片懒加载
  6. windows 7系统安装与配置Tomcat服务器环境
  7. Oracle使用systimestamp取微秒
  8. 16位LED恒流源芯片TC5020A,32*128点阵屏驱动函数
  9. 计算机组装与维修论文摘要,计算机组装与维护—本科毕业设计论文摘要.doc
  10. 禁用win10自动更新bat脚本
  11. 斑马Zebra 110Xi4 打印机驱动
  12. PLC、PAC、PC-Based、软PLC傻傻分不清
  13. 说说找工作这些事儿(未完)
  14. 最新论文笔记(+11):Privacy-Preserving Searchable Encryption Framework for Permissioned Blockchain Networks
  15. gsoc 任务_我在GSoC'20中进行编码的第三周
  16. 程序员必备的6款工具软件,炒鸡实用!
  17. linux 修改微秒时间,Linux系统下精确到微秒级的时间操作函数
  18. IRP_MJ_SET_INFORMATION
  19. 数据结构(使用头插法实现单链表)
  20. csharp高级练习题:Codewars风格排名系统【难度:4级】--景越C#经典编程题库,不同难度C#练习题,适合自学C#的新手进阶训练

热门文章

  1. MySQL关系一对多一对一多对多
  2. 【转载】Android 第三方ROM定制之适配谷歌Play Store
  3. 机器视觉镜头的计算方法
  4. 微信一键连wifi服务器,微信小程序一键连wifi
  5. iOS 提交app错误 90096解决办法
  6. 抖音只有几十个播放量的原因是什么?
  7. java文章采集爬虫代码示例
  8. (转)为什么证券行业的软件研发水平远低于互联网科技公司?
  9. 捋一捋Python中的数学运算math库之三角函数
  10. Error while obtaining start requests