一个简单的网站爬虫教程,让你了解爬虫的步骤,爬虫网页数据采集

python

前言

本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理

项目目标

采集APP推广数据

受害者地址

https://www.cpajia.com/

 

环境

  • Python3.6
  • pycharm
  • requests
  • time
  • csv

相关库用 pip install 安装即可

 

获取数据内容

 


cap之家数据是动态数据加载的~ 开发者工具可以找到相对应的数据接口

 


请求数据是POST

 


数据内容找到了,单页数据可以直接爬取,如果想要爬取多页数据,那就要分析接口数据url的变化

因为数据接口是post请求,所以一般情况都是data参数的变化,所以查看data参数的变化就可以了~

  • 第一页接口数据data参数

 

 


两个接口都是一样的数据,但是data参数不一样,第二个就是感觉data参数就是对应的页数号,所以可以多看几页的data参数的变化

  • 第二页接口数据data参数

 

  • 第三页接口数据data参数

 


这一下就很清楚的看到data参数的变化了~Pagelndex是等差数列 刚好对应的页数

所以再翻页爬取的时候只要改变Pagelndex参数就可以了

爬虫代码

导入相关工具

import requests

import time

import csv

请求网页

url = "https://www.cpajia.com/index.php?m=index&a=search"

data = {

"PageIndex": "{}".format(page)

}

headers = {

"User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36"

}

response = requests.post(url=url, data=data, headers=headers)

解析网页数据

    dit = {}

for i in lis:

dit["名称"] = i["title"]

data_time = int(i["updatetime"])

timeArray = time.localtime(data_time)

otherStyleTime = time.strftime("%Y--%m--%d %H:%M:%S", timeArray)

dit["发布时间"] = otherStyleTime

dit["单价/元"] = i["price"]

dit["结算方式"] = i["balance"]

dit["数据查看"] = i["dataview"]

dit["电话"] = i["phone"]

dit["微信"] = i["wxh"]

dit["QQ"] = i["qq"]

dit["产品要求"] = i["content"]

保存数据

f = open("APP推广数据.csv", mode="a", encoding="utf-8", newline="")

csv_writer = csv.DictWriter(f, fieldnames=["名称", "发布时间", "单价/元", "结算方式", "数据查看", "电话", "微信", "QQ", "产品要求"])

csv_writer.writeheader()

运行代码,效果如下图

 

以上是 一个简单的网站爬虫教程,让你了解爬虫的步骤,爬虫网页数据采集 的全部内容, 来源链接: utcz.com/z/530835.html

回到顶部