kingcow库

kingcow是一个Python包,专注于网页请求、解析和网络爬虫。它包括api.py、html_handle.py、xml_handle.py、request.py和spider.py等子包,支持Python3。kingcow提供网页标签解析、数据解析和网络爬虫功能,包含Spider和Spider_For_Threading两种爬虫类,后者为多线程版本。用户可通过提供的方法轻松获取和解析网页信息。
摘要由CSDN通过智能技术生成

最近做了一个和网页有关的Python包,功能主要覆盖网页请求、网页解析和网络爬虫等。
这个包我已经上传到到了Pypi:

python -m pip install kingcow

支持Python3,如果是Python2可能会出现兼容性问题

结构

这个包主要有5个子包

  • api.py
  • html_handle.py
  • xml_handle.py
  • request.py
  • spider.py

其中api.py和request.py负责网页请求,并返回一个Request类(request.py),html_handle.py和xml_handle.py解析网页,spider.py主要是网络爬虫。

使用方法

网页标签解析

kingcow提供了网页标签的解析,您只需提供标签的名称与属性,他就会返回属性的值

import kingcow as kc
a = kc.get('https://www.taobao.com/') # 返回一个kingcow.Request对象,使用GET发送请求
print('a.html_tag('a','href'))

这段代码会打印出淘宝网首页的所有链接,你可以根据这些链接访问淘宝网的其他站点

网页数据解析

kingcow提供网络数据解析,可以快速方便解析网页数据,您只需提供标签和属性(可选)

import kingcow as kc
a = kc.get('https://docs.python.org/zh-cn/3.8/tutorial/index.html')
a.html_analysis('p')

代码会打印出Python官方文档中为标签p的数据

还可以用json类方法获取返回json

网页爬取

kingcow提供了Request类以及get,post函数这些请求方法,这几种请求方法的参数大致相同,但get和post中请不要填method。

主要参数说明

url:str类型,为网页地址

data:请求数据,网页指定提交类型为application/x-www-form-urlencoded

json:请求类型,网页指定提交类型为application/json

headers:请求头

method:模式,如GET,POST

code:如果有data参数,会将data参数加密成code编码

ip:使用代理ip

Spider爬虫

Spider爬虫有两个类,分别为Spider和Spider_For_Threading,我们先来介绍Spider

Spider

Spider是一个爬取多个网站的爬虫类,所需的参数大致与Request类相同,不同的是Spider不需要提供url,只需提供url的集合(不是set,是list),还可以提供step,为爬取间隔。

Spider初始化后不会爬取网站,必须要用户使用Spider.request方法爬取

Spider还有四个类方法(Spider.request除外):

html_data:网页数据解析

html_tag:网页标签解析

xml_data:xml数据解析

json_get:json标签项提取

json:json提取

Spider_For_Threading

Spider_For_Threading是Spider的多线程版本,速度是Spider的4倍,具体方法同Spider

github

kingcow库链接

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值