爬虫部分知识点(1)

前言:这只是我自己的随笔,专业性不高,不允许搬运。

一.爬虫概念

网络爬虫也叫网络蜘蛛,特指一类自动批量下载网络资源的程序,这是一个比较口语化的概念。

来个 专业一点的,网络爬虫是伪装成客户端于服务端进行数据交互的程序。

二.作用

网络爬虫的作用有很多,比如数据采集,搜索引擎,模拟操作。

三.示例

接下来我来写一个原生爬虫,不高级,但是可以让大家理解爬虫的原理。

这个代码的内容是:爬取虎牙直播,并获取主播人气排行(一直在变动,所以每个人的结果可能都不一样)

话不多说,上操作:

我是把代码封装在类里面,通过调用的方式来得到结果。

代码如下:

python 复制代码
# 原生爬虫,爬取虎牙直播,并对主播人气排序
import re
import gzip
from io import BytesIO
from urllib.request import urlopen
class HuYaSpider:
    def __init__(self,url):
        self.url = url

# 1.获取爬取目标网站的网址url
    def scrawl(self):
        source = urlopen(self.url)
        sourceRead = source.read()
        buff = BytesIO(sourceRead)
        f = gzip.GzipFile(fileobj=buff)
        html = f.read().decode('utf8')
        return html


# 2.发送请求request,爬取网站内容
# 3.获取服务器返回资源response,分析并获取目标内容
    def analysis(self):
        html = self.scrawl()
        nickNames = re.findall('<i class="nick" title="(.*?)">',html)
        popNums = re.findall('<i class="js-num">(.*?)</i>',html)
        return nickNames,popNums
# 4.排序,获取主播人气排行
    def sortHuya(self):
        nickNames, popNums = self.analysis()
        popularNums = []
        for popNum in popNums:
            if "万" in popNum:
                popNum = popNum.replace("万","").replace(",","")
                popNum = float(popNum) * 10000
                popularNums.append(popNum)
            else:
                popNum = popNum.replace(",","")
                popularNums.append(popNum)
        huyapaixv = zip(nickNames,popularNums)
        huyaSort = sorted(huyapaixv,key = lambda x:x[1],reverse=True)
        return huyaSort
        # return popularNums

这是封装的部分,接下来是调用这个类里面的方法。

python 复制代码
from 爬虫 import HuYaSpider
huyaSpider = HuYaSpider("https://www.huya.com/l")
# 调用类里面的方法
huyaSpider.scrawl()
result = huyaSpider.sortHuya()
print(result)

ok,这就是我的完整代码。其中的一些操作我就不解释了,如果遇到问题,欢迎随时和我讨论。


好了,这篇我就只写这么多,并不是我不想多写,而是爬虫本身的成分复杂,我怕误写一些不该写的,爬虫这部分我也只会写几篇。

下一篇继续,蓝桥杯启动!

相关推荐
跨境生态圈21 分钟前
2026谷歌SEO快速排名深度解析:合规起量、避坑指南与实战落地策略
数据库·人工智能·爬虫·搜索引擎·chatgpt
傻啦嘿哟4 小时前
某房产平台爬虫:爬取二手房源数据,分析各城市房价走势
爬虫
深蓝电商API4 小时前
Celery 调度实践
爬虫·celery
数据狐(Datafox)10 小时前
京东商品列表API接口解析(附 JSON 样例)
数据库·爬虫·json
深蓝电商API1 天前
爬虫日志系统如何设计?
爬虫
2601_962300471 天前
学习Python 爬虫路线
爬虫·python·学习路线·数据解析·反爬虫
傻啦嘿哟2 天前
某招聘平台爬虫:爬取招聘岗位数据,分析各城市薪资水平
开发语言·爬虫·python
隐擎fox2 天前
深入理解网络传输层安全:TLS 指纹识别(JA3/JA4)原理与 Python 协议层检测实战
爬虫·python·网络协议·安全·网络安全·https
wuyk5552 天前
Python网络爬虫入门到实战 第01章:爬虫到底是什么?原理、流程、合法性、风险全解析(零基础必看)
开发语言·爬虫·python
SEO_juper2 天前
你的服务器正在被 AI 爬虫“白嫖“带宽:2026 用日志把 Googlebot 和 AI 洪流分开算账(附脚本)
运维·人工智能·爬虫·python·chatgpt·seo