复制代码

python 爬虫模板

前言

在我们写爬虫的时候,一般想要的数据都在详情页里面,一般代码进入详情页参数,需要首页里面寻找,所以爬这样的网站,需要定义一个模板

我的模板如下:

 

import random
import time

import requests
from auction import logtool
from auction.BaseCrawler import BaseCrawler


class Wk(BaseCrawler):
    def __init__(self):
        super().__init__()
        self.headers = {} #公用的
        self.session = requests.Session()
        self.session.headers.update(self.headers)

    def data_list(self, *args, **kwargs):
        #请求首页数据
       pass


    def data_details(self, *args, **kwargs):
        # 请求详情页
       pass

    def get_total_page(self, *args, **kwargs):
        pass

    def parse_data_list(self, *args, **kwargs):
        # 解析详情页需要的数据
        pass


    def parse_data_details(self, *args, **kwargs):
        # 解析详情页
       pass

    def action(self, *args, **kwargs):
        maxpage = 1 # 页数
        logtool.info("开始爬取")
        logtool.info("进入网页")

        urls = ''  # 详情页接口
        # 翻页
        for i in range(maxpage):
            # 请求列表页
            json_datas = self.data_list(page=i)

            datas = self.parse_data_list(json_datas=json_datas)
            for _, data in enumerate(datas):

                json_datas = self.data_details(url=urls)

                details_data = self.parse_data_details(json_datas=json_datas)
            print(f"第{i + 1}页,第{_ + 1}条完成!!!")


if __name__ == '__main__':
    wk = Wk()
    wk.action()

 

posted @ 2024-02-21 09:26  怪~咖  阅读(21)  评论(0编辑  收藏  举报
复制代码