如何为FnB市场开发搜刮应用程序

111 阅读4分钟

[

Rahman Taufik

](medium.com/@rahmantauf…)

拉赫曼-陶菲克

关注

6月6日

-

4分钟阅读

FnB市场的搜刮应用开发

用搜刮应用获得大量的市场产品,省钱又省时

本文旨在为想用它来搜刮数据的人分享搜刮应用的开发。这篇文章的内容包括。

  • 场景:解释开发了哪些功能以及如何使用它来获取产品
  • 技术:解释这个应用程序的一些过程,包括代码。

场景

有两种情况:(a)想进一步开发这个应用的人,或者(b)只用这个应用来获取数据产品的人。

a.对于那些想进一步开发此应用的人来说,有几个功能需要提前了解,包括。

  1. 刮取数据:这个应用程序还没有在网站或其他平台上部署,所以它只能通过docker运行,并且只能刮取印尼两个市场上的食品和饮料产品。
  2. 测试案例:有几个测试案例,包括刮取产品尿液、原始数据、转换产品数据和下载图片。
  3. 清理目录:这个功能是为了删除所有的原始数据,避免重复的文件和重新搜刮时出现错误。
  4. 上传到云存储:已经刮取的数据可以上传到你的云存储中,你必须调整设置,上传的内容包括尿液、产品细节和图片。
  5. 每日自动搜刮:要运行这个功能,你必须访问或拥有你想自动搜刮的产品的URL列表,目前这个功能还不能正常工作。

b.另一方面,人们不能轻易使用这个应用程序,因为它仍然处于开发阶段,但该应用程序已经可以用于刮取产品的详细信息和图片。请了解应用程序开发的人帮忙,用一些命令来运行这个应用。

以下是在本地部署该应用程序的步骤。

  1. 下载代码(源代码链接在下面)。
  2. 安装docker
  3. 用命令建立一个docker镜像,你可以复制到你的终端(确保你和源代码在同一个目录下)sudo docker build -t simple-fnb-scraping
  4. 用命令运行docker镜像sudo docker run simple-fnb-scraping
  5. 打开浏览器,通过ip地址访问应用程序(这取决于你的本地ip)。
  6. 可以刮取的数据包括产品细节和图片
  7. 刮取产品细节,在浏览器中运行(your_local_ip)/(market_place_name)/(outlet_name),并等待一分钟,直到数据被下载。
  8. 刮取产品图片,在浏览器中运行(your_local_ip)/(market_place_name)_images/(outlet_name),并等待一分钟,直到数据被下载下来。

the dashboard of program

该应用程序的仪表板(172.17.0.2:5000是可用于访问该应用程序的本地IP的例子)。

技术信息

对于想进一步开发这个应用程序的人来说,应该知道一些技术信息

  • 该应用程序的模式从从市场的出口刮取产品尿液的过程开始,根据尿液刮取产品细节,将数据转换为所需的csv文件,并下载产品图片。

  • 我们使用Selenium来获取这些产品的URL,我们在代码中加入市场的出口链接,然后用这些结果来抓取产品的细节。

  • 检查指向网站数据的xpath类是否有效,xpath应该根据市场网站的情况进行更新。

  • 我们使用scrapy网络抓取框架来抓取产品细节,在这里指定你要抓取的产品细节

  • 如果你想转换产品细节,如添加其他列,删除不必要的文本或转换为所需的csv文件,这里是代码示例

  • 我们使用python requests模块来下载图片,代码包括删除旧的图片,然后以压缩包的形式下载。

  • 为了在一个出口处获得所有的产品,并在同一时间运行所有的搜刮过程,你需要一个包含所有这些的代码

  • 或者,如果你想一个一个地测试这个过程,这里有一个代码的例子

  • 对于这个搜刮应用程序的完整代码,包括其他过程,如上传到云存储,每日自动搜刮,你可以看看源代码,它更完整,包括文档和你必须设置的目录树

  • 如果你想添加其他市场,搜刮模式和代码必须适应网站数据的相关模式。

谢谢,请关注我的其他有趣的文章,如网络搜刮、机器学习等。

其他搜刮类文章

[

使用Python Selenium进行网络抓取和登录

使用BeautifulSoup或Scrapy在网站必须先登录的情况下进行搜刮时遇到了问题?

medium.coms

](medium.com/analytics-v…)

[

从Google上刮取新闻

如何用网络搜刮的方法从Google中提取信息?

medium.com

](medium.com/analytics-v…)