首页 > 编程语言 >python 爬虫模板

python 爬虫模板

时间:2024-02-21 09:33:05浏览次数:33  
标签:__ python self def 爬虫 json 模板 data datas

前言

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

我的模板如下:

 

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()

 

标签:__,python,self,def,爬虫,json,模板,data,datas
From: https://www.cnblogs.com/wzcc/p/18024480

相关文章

  • python实战:使用json序列化
    一,官方文档:https://docs.python.org/zh-cn/3/library/json.html二,json与字典的相互转化1,字典转json字符串1234567importjson #字典转jsond=dict(name='Tom',age=2,score=88)json_d=json.dumps(d)print(type(json_d))print(json_d)......
  • python中的内置函数zip函数
    关于zip()函数,有几点要讲的。首先,官方文档中,它是这样描述的:Makeaniteratorthataggregateselementsfromeachoftheiterables.Returnsaniteratoroftuples,wherethei-thtuplecontainsthei-thelementfromeachoftheargumentsequencesoriterables.The......
  • 线段树—模板
    线段树常见操作build建树update更新query查询pushup向上回溯pushdown向下延迟更新(延迟标记)建线段树://预编译命令,做符号代换#definelson(gjd<<1)#definerson(gjd<<1|1)//gjd表示当前结点,[l,r]表示区间范围voidbuild(intgjd,intl,intr){tree[gjd]......
  • 请求接口生成导入模板
    这里介绍一种通过接口去生成导入数据Excel模板1、controller 2、serviceImpl@OverridepublicvoiddownloadOrderTemplate(HttpServletResponseresponse){List<WorkOrderVoImportDto>orderVoImports=newArrayList<>();try{List......
  • C++ 模板的笔记2
    C++模板的笔记2关于可变参函数模板借鉴了一部分笔记,感谢大佬类模板中的嵌套类模板可以嵌套其他类模板,就像普通类可以嵌套其他普通类一样。嵌套的类模板可以访问外部类模板的成员,包括私有成员。示例:#include<iostream>usingnamespacestd;template<typenameT>classO......
  • python实战:用requests+做爬虫
    一,安装requests1,用pip安装(venv)liuhongdi@192news%pip3installrequests2,查看所安装库的版本:(venv)liuhongdi@192news%pip3showrequestsName:requestsVersion:2.31.0Summary:PythonHTTPforHumans.Home-page:https://requests.readthedocs.ioAu......
  • Python 实现Excel和CSV格式之间的互转
    通过使用Python编程语言,编写脚本来自动化Excel和CSV之间的转换过程,可以批量处理大量文件,定期更新数据,并集成转换过程到自动化工作流程中。本文将介绍如何使用第三方库Spire.XLSforPython实现:使用Python将Excel转为CSV使用Python将CSV转为Excel安装PythonExcel类库:pip......
  • python文件获取并读取固定长度数据实例解析
    一概念1file操作:文件操作一般有open,write,read,close几种,这里重点是read固定长度数据。read() 用于从文件读取指定的字节数,如果未给定或为负则读取所有。本文中心不在概念,直接上源码。二源码解析importsysfromPyQt5importQtWidgetsfromPyQt5.QtWidgetsimportQF......
  • python不能跳转进入某个函数或模块的一种解决思路
    例如,下图中的get_bucket_mount_root函数可以顺利import进来,但是按ctrl键不能跳转进入这个函数: 一个解决思路是,在vscode终端中,打开python解释器,import上图中的hatbc库,然后用hatbc.__file__命令查找该库的__init__.py文件的路径,按住ctrl键,点击这个路径,即可跳转进入这个__init__.......
  • 爬虫_02days
    免费代理池搭建#代理有免费和收费代理#代理有http代理和https代理#匿名度 -高匿:隐藏访问者ip-透明:服务端能拿到访问者ip-作为后端,如何拿到使用代理人的ip -请求头中:x-forword-for-如果一个HTTP请求到达服务器之前,经过了三个代理Proxy1、Proxy2、Proxy3......