爬虫程序采集网络数据

这篇具有很好参考价值的文章主要介绍了爬虫程序采集网络数据。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一、Xampp搭建本地网站

二、认识Html标签

三、爬虫程序范例

 (一)调用模块

 (二)加载需要爬虫的网址

(三)爬取内容选取

 (四)爬取内容保存

(五) 完整爬虫程序


一、Xampp搭建本地网站

第一步:启动web服务:运行Xampp,启动Apache.

爬虫程序采集网络数据

 爬虫程序采集网络数据

 第二步:设置本地网站

爬虫程序采集网络数据

 爬虫程序采集网络数据

 此时,本地网站地址就设置好了,地址为:http://127.0.0.1/wholesale.html

二、认识Html标签

爬虫程序采集网络数据

 爬虫程序采集网络数据

 爬虫程序采集网络数据

 爬虫程序采集网络数据

 爬虫程序采集网络数据

 爬虫程序采集网络数据

 爬虫程序采集网络数据

 爬虫程序采集网络数据

 文章来源地址https://www.toymoban.com/news/detail-499059.html

三、爬虫程序范例

第一步:打开第一部分设置好的地址:http://127.0.0.1/wholesale.html,可以看到网页内容

爬虫程序采集网络数据

 (一)调用模块

调用爬虫模块


import bs4
import requests

调用excel和日期时间模块

import xlwt
import datetime

 (二)加载需要爬虫的网址

date = datetime.datetime.now().strftime('%Y-%m-%d')                    # 给文件打上时间戳,便于数据更新
url = 'http://127.0.0.1/wholesale.html'      # 网址
payload = {'SearchText': 'nike', 'page': '1', 'ie': 'utf8', 'g': 'y'}  # 字典传递url参数

(三)爬取内容选取

soup.find_all 中的两个参数 :爬取的网页内容的标签名称和标签属性class的值

 all_title = soup.find_all('a', class_='item-title')

 class的值填写:

第一步:选择商品标题,右击鼠标,选择【检查】

爬虫程序采集网络数据

 第二步:网页会自动定位到商品标题内容部分。可以显示为a标签,class为item-title,将其填入到python代码中即可。

爬虫程序采集网络数据

因此,代码含义为:

 all_title = soup.find_all('a', class_='item-title')#爬取页面代码中所有属性为item-title的a标签内容,并写入到all_title列表

需要注意的是,如果选取的内容没有class,则返回上一级标签的内容:

即: 

all_title = soup.find_all('div', class_='item-title-wrap')

 爬虫程序采集网络数据

 

 title.append参数:读取列表中某个标签内的字符串。下面代码的含义为:将a标签的内容增加到title列表

   title.append(soup_title.a.string)

 (四)爬取内容保存

将爬取的数据保存在程序同一目录下生成的以“%s-%s.xls”以日期命名的文件中。如果是想把xls名字改为“淘宝”,则代码更改为"淘宝.xls",则爬取的数据将保存在"淘宝.xls"文件中。

wookbook.save("%s-%s.xls" % (payload['SearchText'], date))  #保存文件
print("写入excel表格成功!")

(五) 完整爬虫程序

 # -*- coding: utf-8 -*-

import bs4
import requests
import xlwt
import datetime
      
date = datetime.datetime.now().strftime('%Y-%m-%d')                    # 给文件打上时间戳,便于数据更新
url = 'http://127.0.0.1/wholesale.html'      # 网址
payload = {'SearchText': 'nike', 'page': '1', 'ie': 'utf8', 'g': 'y'}  # 字典传递url参数

# 初始化数据容器
title = []
price = []
order = []
store = []
      
# 爬取网页上的数据
for i in range(0, 5):        # 循环5次,就是5个页的商品数据
        payload['page'] = i+ 1    # 此处为页码,根据网页参数具体设置
        resp = requests.get(url, params=payload)
        soup = bs4.BeautifulSoup(resp.text, "html.parser")
        print(resp.url)          # 打印访问的网址
        resp.encoding = 'utf-8'  # 设置编码

        # 标题
        all_title = soup.find_all('a', class_='item-title')
        for j in all_title:
            soup_title = bs4.BeautifulSoup(str(j), "html.parser",)
            title.append(soup_title.a.string)

        # 价格
        all_price = soup.find_all('span', class_="price-current")
        for k in all_price:
            soup_price = bs4.BeautifulSoup(str(k), "html.parser")
            price.append(soup_price.span.string)
        # 订单量
        all_order = soup.find_all('a', class_="sale-value-link")
        for l in all_order:
            soup_order = bs4.BeautifulSoup(str(l), "html.parser")
            order.append(soup_order.a.string)
        # 店铺名称
        all_store = soup.find_all('a', class_="store-name")
        for m in all_store:
            soup_store = bs4.BeautifulSoup(str(m), "html.parser")
            store.append(soup_store.a.string)

# 数据验证
print(len(title))
print(len(price))
print(len(order))
print(len(store))
      
if len(title) == len(price) == len(order) == len(store):
    print("数据完整,生成 %d 组商品数据!" % len(title))
      
# 写入excel文档
print("正在写入excel表格...")
wookbook = xlwt.Workbook(encoding='utf-8')  # 创建工作簿
data_sheet = wookbook.add_sheet('demo')     # 创建sheet
      
# 生成每一行数据
for n in range(len(title)):
    data_sheet.write(n, 0, n+1)
    data_sheet.write(n, 1, title[n])        # n 表示行, 1 表示列
    data_sheet.write(n, 2, price[n])
    data_sheet.write(n, 3, order[n])
    data_sheet.write(n, 4, store[n])
      
      
wookbook.save("%s-%s.xls" % (payload['SearchText'], date))  #保存文件
print("写入excel表格成功!")

输出结果:

爬虫程序采集网络数据

爬取成功,数据自动保存在以爬取当天日期命名的excel文件中

爬虫程序采集网络数据 

 结果:

爬虫程序采集网络数据

 

到了这里,关于爬虫程序采集网络数据的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • PHP入门及环境搭建 - XAMPP

    目标: 1、了解PHP语言 2、搭建PHP开发环境 3、

    2024年02月10日
    浏览(6)
  • 微信小程序,Python爬虫抓包采集实战,采集某成考题库小程序

    从本篇博客开始,我们会针对微信小程序编写一系列的爬虫,这些爬虫依旧通过案例进行串联,保证对大家的学习有所帮助。 正式开始前先准备工具,一个可以解析 https 协议请求的软件 fiddler ,电脑版微信。 由于在 2022 年 5 月份,微信调整了其小程序架构,所以在正式开始

    2024年02月09日
    浏览(9)
  • ️️ 爬虫技术初探:如何安全高效地采集网络信息

    ️️ 爬虫技术初探:如何安全高效地采集网络信息

    博主猫头虎的技术世界 🌟 欢迎来到猫头虎的博客 — 探索技术的无限可能! 专栏链接 : 🔗 精选专栏 : 《面试题大全》 — 面试准备的宝典! 《IDEA开发秘籍》 — 提升你的IDEA技能! 《100天精通鸿蒙》 — 从Web/安卓到鸿蒙大师! 《100天精通Golang(基础入门篇)》 — 踏入

    2024年03月23日
    浏览(10)
  • XAMPP、Apache搭建本地PHP服务器(全网最保姆级)

    XAMPP、Apache搭建本地PHP服务器(全网最保姆级)

    启动服务 打开后进入如下界面:根据自己的需要 启动服务 我这里打开的是Apache和MySQL 可以根据自己的习惯修改端口号 默认是 8080 我这里修改为 80 端口 修改监听的端口号 Httpd.conf 文件存放着的是主要的 XAMPP 虚拟机的配置 像一些 端口、路由、访问的路径 等等信息 方式1:直

    2024年02月03日
    浏览(9)
  • 《亮数据:爬虫数据采集行业痛点的利器》

    《亮数据:爬虫数据采集行业痛点的利器》

    ❤️作者主页:小虚竹 ❤️作者简介:大家好,我是小虚竹。2022年度博客之星评选TOP 10🏆,Java领域优质创作者🏆,CSDN博客专家🏆,华为云享专家🏆,掘金年度人气作者🏆,阿里云专家博主🏆,51CTO专家博主🏆 ❤️技术活,该赏 ❤️点赞 👍 收藏 ⭐再看,养成习惯 在数

    2024年04月15日
    浏览(13)
  • 淘宝爬虫评论数据采集的探索之旅

    淘宝爬虫评论数据采集的探索之旅

    随着互联网的普及,淘宝作为中国最大的电商平台,每天都有大量的用户在上面购物。为了更好地了解商品的质量和用户的满意度,许多消费者开始关注商品的评论数据。然而,手动翻阅大量的评论不仅耗时,而且容易遗漏重要的信息。因此,我们需要一种自动化工具来帮助

    2024年01月24日
    浏览(10)
  • 批量爬虫采集大数据的技巧和策略分享

    批量爬虫采集大数据的技巧和策略分享

    作为一名专业的爬虫程序员,今天主要要和大家分享一些技巧和策略,帮助你在批量爬虫采集大数据时更高效、更顺利。批量爬虫采集大数据可能会遇到一些挑战,但只要我们掌握一些技巧,制定一些有效的策略,我们就能在数据采集的道路上一帆风顺。 1、设立合理的请求

    2024年02月12日
    浏览(11)
  • 爬虫数据采集违法吗?什么样的行为使用爬虫是违法的

    爬虫数据采集违法吗?什么样的行为使用爬虫是违法的

    爬虫技术本身是不违法的,它只是一个工具,会造成违法后果的是使用工具的人的不当行为。那么想要合理正确的使用爬虫数据,就要知道哪些行为是不能做的。下面小编会在下面的文章详细介绍什么样的行为使用爬虫是违法的。 1.爬取商业数据 如果只是爬取行业内公开在万

    2024年02月14日
    浏览(24)
  • 爬虫代理在数据采集中的应用详解

    爬虫代理在数据采集中的应用详解

    随着互联网技术的不断发展,数据采集已经成为了各个行业中必不可少的一项工作。在数据采集的过程中,爬虫代理的应用越来越受到了重视。本文将详细介绍爬虫代理在数据采集中的应用。 什么是爬虫代理? 爬虫代理是指利用代理服务器来隐藏真实的IP地址,从而保护数据

    2024年02月07日
    浏览(7)
  • C语言爬虫采集图书网站百万数据

    C语言爬虫采集图书网站百万数据

    最近需要查阅一些资料,只给到相关项目名称以及,想通过图书文库找到对应书籍,那么怎么才能在百万数据库中找到自己需要的文献呢? 今天我依然用C语言写个爬虫程序,从百万数据库中查找到适合的文章,能节省很多事情。 下面是一个简单的C#爬虫程序,它使用

    2024年01月21日
    浏览(9)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包