用python学习抓取借鉴取豆瓣电影top250

python课实训报告心得体会2000字 这篇文章主要介绍了一个有趣的事情,具有一定借鉴价值,需要的朋友可以参考下。我要抓取的豆瓣电影 Top 250,地址是https://movie.douban.com/top250?Python综合应用:爬虫、数据处理、可视化、机器学习、神经网络、游戏、网络安全等。print(f'正在抓取第{str(page_num)}页数据...')1、首先想好要抓取什么网站,因为想不到什么,就干脆去找豆瓣排行榜。print(f'抓取失败,失败原因:{e.reason}')4、可以提取信息了,但是。 阅读详情

          今天给大家带来的是用最近学习的python抓取豆瓣上面的top250电影,具体是将电影的title、电影描述(就是导演呀之类的是谁)、电影封面图片、电影的星级、电影评价数目以及电影的一句影评抓取下来,然后在控制台有格式的打印出来。

          已经明确了要做的事情,接下来就考虑怎么来做这件事情了,第一步是打开豆瓣电影top250 这个页面,第二步骤是分析网页源代码,找到我们需要爬取的信息的标签,例如电影title的标签等等是什么。第三步就是写代码了,将整个html请求下来,然后解析网页,获取我们需要的信息,利用beautifulsoup进行解析,所有文字信息获取到后,第四步就是开启一个子线程将电影的封面下载下来,并且将其保存在本地。完成这四步我们就算是完成了我们的工作。

          首先打开豆瓣电影top250,可以看到电影是按照一个列表呈现出来的,页面最底部也是通过12345酱紫的可以进行翻页查看,但是如何分析页面元素呢,可以用chrome的开发者工具,这可是前端工程师的调试利器呀,在mac上的快捷键组合是option+command键,之后可以看到如下页面 

页面下部分就是网页源代码的一些展示,有些同学可能有疑问了,我们怎么找到页面上的元素在代码中对应的标签是什么呢?一种很方便的方式就是点击我图中画圆圈的图标,然后自己鼠标在页面上选中一部分,就会直接定位到具体的地方了,可以自己试下,效果还是很棒的,经过我刚刚说的操作在代码中发现所有列表是放在一个class为gridview的ol标签中的,这个标签中都是li标签,而每一个li就是每一部电影信息的Item,而在这一个个li中就有我们需要的信息,并且每一个li中都是一样子的,每个Item怎么获取信息,解析哪个标签我们算是搞懂了。

        我们上面也说了下面是有翻页的,所以只请求一次肯定是不行的,所以肯定需要循环,那我们需要看看下面的翻页标签了,如下图:

因为我们是在第九页所以在页面上会看到有“前页”和“后页”,但是当你在第十页的时候,后页里面就没有那个link的链接标签了,所以这就可以用来作为我们是否请求到了最后一页的判断条件了,我们也知道就是每页的请求链接都是不同的,但是细心的同学也已经发现了,请求的链接就是那个class为next的span标签里面的link标签的href属性加上跟地址了。至此我们的思路都已经理清楚了,接下来上代码。

#!/usr/bin/env python
# encoding: utf-8

'''
    爬取豆瓣top250 电影 信息
'''

import requests;
from bs4 import BeautifulSoup;
import os;
import time;
import threading;

'''
   定义一个类 属性包含图片的名称以及下载的url
'''
class Picture:
    def __init__(self,picName,picSrcUrl):
        self.picName = picName;
        self.picSrcUrl = picSrcUrl;

'''
   下载图片,因为它比较耗时所以将其放在子线程中
'''
def downloadPicture(pictureList):
    fileDir = "/Users/aaa/Documents/douban/";
    if not os.path.isdir(fileDir):
        os.makedirs(fileDir);
    for index in range(len(pictureList)):
        try:
            picture = pictureList[index];
            filename = fileDir + picture.picName + ".webp";
            file = open(filename, "w");
            file.write(requests.get(picture.picSrcUrl, timeout=5).content);
            file.close();
        except:
            print picture.picSrcUrl,'下载失败'
            pass
    print "爬取耗时:", time.time().__float__()- cuttentTime.__float__() , 's';

param = "";# 后面分页时候拼接的参数
cuttentTime = time.time();
listPicture = [];
while True:
    # 请求豆瓣top250 电影的url
    baseUrl = 'https://movie.douban.com/top250' + param;
    myResponse = requests.get(baseUrl, timeout=5);
    myResponse.raise_for_status();
    responseString = myResponse.text;
    soup = BeautifulSoup(responseString, 'lxml');
    olArticle = soup.find('ol', class_='grid_view');# 获取存储文章的ol对象
    lilist = divItem = olArticle.find_all('li');
    for index in range(len(lilist)):
        # 下面是关于电影的一些信息文字信息
        divItemInfo = lilist[index].find('div', class_='info');
        divBd = divItemInfo.find('div', class_='bd');
        titleList = divItemInfo.find('div', class_='hd').a.find_all('span');
        stringTitle = '';
        # 影片的大致描述,导演、演员以及上映时间等
        strContentDescription = divBd.p.getText();
        # 影片的星级
        strRatingStar = divBd.div.find_all('span')[1].getText();
        # 影片的评价数目
        strComment = divBd.div.find_all('span')[3].getText();
        # 对于影片的一句话总结(有的没有影评所以要判空)
        if divBd.find('p', class_='quote'):
            strQuote = divBd.find('p', class_='quote').span.getText();
        # 进行电影名称的拼接,因为电影在不同的地方上映可能名字不同
        for indexTitle in range(len(titleList)):
            stringTitle = stringTitle + titleList[indexTitle].getText();
        print "电影名称:"+stringTitle.encode('utf8')\
              +"\n电影星级:"+strRatingStar.encode('utf8')\
              +"\n电影评价数目:"+strComment.encode('utf8')\
              +"\n电影一句话总结:"+strQuote.encode('utf8')\
              +"\n电影大致内容信息:"+strContentDescription.encode('utf8').strip()+"\n";
        divItemPic = lilist[index].find('div', class_='pic');
        listPicture.append(Picture(divItemPic.a.img.get('alt'),divItemPic.a.img.get('src')));
    print "\n";
    divpaginator = soup.find('div', class_='paginator');# 获取底部分页的导航条
    spanNext = divpaginator.find('span', class_='next');# 获取后页
    # 如果后一页没有link,那么意味着已经到了最后一页了,所以需要跳出循环
    if not spanNext.link:
        break;
    # 获取link的某个属性,可以使用get方法
    param = spanNext.link.get('href');
'''
   在所有数据内容爬取完毕后开始一个新的线程下载图片,这里还非得用threading模块了,因为它开启的派生线程在运行时候,主线程不会退出,直至派生线程执行完毕
   但是如果派生线程被设置为守护线程,即设置setDaemon为true的话,主线程退出派生线程也就不执行了(但是这个不是我们想要的)
   如果直接使用thread模块就会存在主线程提前退出派生线程无法执行完毕,导致下载失败的情况
'''
try:
    # 需要注意的一点是 第一个参数是方法名,第二个参数一定是一个tuple元组,否则均会报错
    threadDownload = threading.Thread(target=downloadPicture, args=(listPicture,));
    threadDownload.setDaemon(False)
    threadDownload.start();
except:
    print "Error: unable to start thread"
        以上就是代码,注释写的还是比较清楚的。代码就是首先循环将每一页上面的每一条电影信息的名称等文字信息先抓取下来,然后将电影的封面url和电影的名称作为类Picture的两个属性存起来,然后这些对象又存储在listPicture这个数组中,当所有的文字信息都抓取完毕时候,开启新的线程调用downloadPicture方法传入listPicture数组,循环将图片下载下来并且存储到本地。其实最初我没有将图片下载单拉出来,最初图片也是随着每一条电影信息下载并且存储的,但是想到图片的下载是一个耗时的过程且失败的可能性还是挺高的,所以不能因为某张图片的下载失败影响了其他文字信息的获取,所以综上所有原因就将所有的图片下载放在一个子线程中单独执行了。

        代码的细节上标签解析都是用的beautifulsoup也比较简单,就是找好层级关系就好了,然后可以看到我的子线程用的threading而不是thread,原因上面的代码注释中也有说,就是threading开启的派生线程,如果不设置为守护进程,那么在派生线程执行结束之前主线程是不会退出的,能够满足我们的要求,但是如果用了thread,那么主线程不会等待thread执行完毕自己就退出了,所以虽然代码不报错,但是图片却不能下载下来,我刚开始就是用的这行代码“thread.start_new_thread (downloadPicture, (listPicture,))”,自然是不ok的了。另外需要注意的是无论是start_new_thread方法还是threading.Thread方法,第一个参数都是方法名称,而不是方法的调用,第二个参数一定是一个元组,否则是会报错的哦。

       最后代码已经上传githubgithub代码链接。以上就是本次全部内容,有问题欢迎批评指正。特此声明本次爬取仅用于学习使用,不用于任何商业用途。


python数据爬取的基本原理,python爬取数据的原理 如果你也喜欢编程,想通过学习Python转行、做副业或者提升工作效率,我也为大家整理了一份【最新全套Python学习资料】一定对你有用!如果你是零基础小白,想快速入门Python是可以考虑的!1、学习时间相对较短,学习内容更全面更集中2、可以找到适合自己的学习方案Python安装包+激活码、Python web开发,Python爬虫,Python数据分析,人工智能、机器学习等教程,带你从零开始系统性的学好Python!我已经上传至优快云官方,如果需要可以扫描下方二维码。 阅读详情

相关推荐

【深度学习3】ubuntu22.04从零开始搭建深度学习环境

ubuntu22.04从零开始搭建深度学习开发环境

weixin_43387635的博客 1万+

Python爬虫零基础(以爬豆瓣电影top250为例,尝试自己写爬豆瓣读书top250的代码)

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 欢迎使用Markdown编辑器 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar

qazwsxedc__1的博客 1698

RTL优化与PPA分析:数字电路设计的关键技术

在数字集成电路设计中,RTL(寄存器传输级)优化是提升芯片性能、降低功耗和减小面积的核心技术。通过PPA(Power-Performance-Area)指标的平衡,工程师可以在不同时序约束下实现设计的最优化。本文基于Synopsys Design Compiler和开源工具Yosys的实验数据,展示了RTL优化在算术单元和控制逻辑中的显著效果,特别是在乘法器和除法器等复杂运算模块中。文章还探讨了AI辅助工具在RTL优化中的应用潜力,为数字电路设计提供了实用的技术参考和工程实践建议。

weixin_42186387的博客 619

Python 分析案例|数据采集案例:豆瓣电影 TOP250 采集

实现目标 本案计划实现:通过网络请求,获取豆瓣电影TOP250的数据,并存储到Json文件中。 案例应用技巧: GET请求(requests):headers 翻页 网页解析(BeautifulSoup) 实现过程 总体来说,简单的单线程爬虫的实现流程如下: 确定数据所在的Url,以及控制翻页的参数 执行网页请求并解决请求中出现的问题 解析网页,获取格式化数据 实现翻页 存储数据 下面我们按着以上步骤来依次完成。 确定数据所在Url 在Chrome浏览器中.

长行 2434

使用电荷放大器处理压电加速度计输出

电阻器 R p模拟传感器的绝缘电阻,为产生的电荷创建泄漏路径。在此图中,顶部波形显示传感器产生的电荷,而底部波形显示电荷放大器的输出。这需要具有大输入阻抗的放大级,以防止产生的电荷通过与传感元件并联的放大器的输入阻抗泄漏。换句话说,电荷放大器补偿传感器产生的电荷 q p ,反馈电容器 C F中具有相反极性的等量电荷。因此,任何与传感器并联的绝缘电阻,如电缆的绝缘电阻或传感器的漏电电阻Rp,都不能流过电流。漂移是指电荷放大器输出在一段时间内发生的变化,而不是由被测物理参数的变化(我们讨论的加速度)引起的。

weixin_45260069的博客 3905

BSW:MemMap模块配置及使用

(内存映射(MemMap)模块用于通过内存映射文件将代码和数据映射到特定的内存部分。MemMap生成特定的头文件,其中包含为MemorySection元素和编译器特定指令定义的内存映射预处理器。上面是比较官方的回答,说人话就是把数据和代码放在ECU内指定的地址。初级应用:软件中的bss,data,rodata,code,text,段需要在memory layout中划分具体的物理地址,对于多核系统,要将执行的数据和代码放在目标核的RAM和ROM。

Forever_Oct的博客 3676

13行代码实现爬取豆瓣250电影榜单

原理很简单,通过发送resquest请求获取服务器的response,再使用xpath提取其中我们需要的数据,然后保存到文件中。 先看看我爬取的结果: 首先,需要用到的模块有两个: •requests •lxml 第一步,我们先用Chrome的检查分析豆瓣250页面的http请求报头(Request URL):• 让我们把注意力放在箭头所指的start = 0处,当st...

weixin_30635053的博客 264

gd32 spi 发送&中断接收例程

【代码】gd32 spi 发送&中断接收例程。

weixin_43026921的博客 1653

python爬虫——爬取豆瓣top250电影数据(适合初学者)

爬取豆瓣top250其实是初学者用于练习和熟悉爬虫技能知识的简单实战项目,通过这个项目,可以让小白对爬虫有一个初步认识,因此,如果你已经接触过爬虫有些时间了,可以跳过该项目,选择更有挑战性的实战项目来提升技能。当然,如果你是小白,这个项目就再适合不过了。那么就让我们开始吧!目录一、实战1.对豆瓣网网站进行Ajax分析2.提取数据二、python完整代码(两种方法)bs4方法正则式方法。

长弓同学的python学习笔记 5万+

MUSIC算法翻车?Toeplitz矩阵重构如何解决DOA估计中的相干信源难题

本文深入探讨了MUSIC算法在相干信源DOA估计中失效的根本原因,并详细介绍了基于Toeplitz矩阵重构的协方差矩阵修复技术。该方法通过凸优化恢复协方差矩阵的理想结构,有效解决了信号子空间秩亏损问题,从而显著提升了MUSIC算法在相干和多径场景下的分辨精度与稳健性。

a2b3c4d5e的博客 249

Freeswitch DTMF 按键无法接收问题修复

freeswitch 在接收到 update后,会更新成新的 payload type,但是给的200响应,仍然是旧的,这时候就会导致手机侧认识需要发送旧的payload,所以发到 fs 后就会导致直接丢包,不去处理RTP包了。呼叫时需要设置通道变量 rtp_manual_rtp_bugs=ACCEPT_ANY_PAYLOAD ,这时候FS 就不会对包的payload进行判断,直接判定通过。应该修复 freeswitch 给响应时,应该根据收到的 payload 发送给手机,但是一直未找到正确的路径。

2301_81507069的博客 373

Python网页爬虫爬取豆瓣Top250电影数据——Xpath数据解析

本次程序只爬取了豆瓣top250电影的展示页面的数据,没有爬取电影详情页的数据。在前面我们已经获取了每一部电影详情页的链接links,如果想要爬取电影的详情页,可以通过for循环遍历列表links,对每一个详情页发起请求,从而获取电影详情页的数据并进行解析。

qq_44777595的博客 6万+

TC3XX - MCAL知识点(二十):CAN MCAL配置及代码实战(CAN/CANFD/extenen CAN)

CAN驱动程序负责提供AUTOSAR指定的标准CAN通信服务。M_CAN单元是底层的CAN硬件单元,它由共享消息RAM(在AUTOSAR中称为硬件对象)的节点(在AUTOSAR中称为控制器)组成。CAN驱动提供以下服务:·初始化CAN控制器以控制CAN控制器的行为和状态·设置和修改CAN控制器的波特率配置·支持CAN和CAN FD帧的收发·在轮询和中断模式下,成功的帧传输通知,专用和FIFO消息的接收和总线事件通知·数据接收使用接收FIFO功能·假装网络模式处理·支持多读/写周期功能。

梦想技术家 3939

通过爬取豆瓣评分Top250电影数据浅谈对Python爬虫的认识

今天在酱酱的带领下接触到了Python爬虫,有点兴趣,探索一下。 Python是如何与Excel表格搭讪哒? python有专门的库为Excel文件的操作提供支持,这些库包括xlrd,xlwt,xlutils,openpyxl,xlsxwriter等它们可以帮助我们自动化办公。 首先是一个简单的Python与excel交互的代码。 import openpyxl #导入我们要用到的库 import datetime #生成一个workbook的实例化对象 excel_obj = openpyxl.Workb

weixin_44991673的博客 3333

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

Python获取TOP250电影的英文名、港台名、导演、主演、上映年份、电影分类及评分

《Python网络爬虫:从入门到实践》3.4.3自我实践题: 获取豆瓣网上TOP250电影的英文名、港台名、导演、主演、上映年份、电影分类及评分。 学习嘛,就费了点劲自己试了一下,挺耽误时间的,不过好在搞出来了,书上给的代码有点问题,不够全面。 现在把自己测试过的源代码给大家分享出来,供大家学习借鉴,正好正则表达式一起学了,还是很有收获的。 由于电影的英文名、港台名爬取过滤比较麻烦,太耽误...

Python Supporter 5176

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

初中生学python教材推荐,中学生可以这样学python

爬虫网络爬虫(又被称为网页蜘蛛,网络机器人)就是模拟浏览器发送网络请求,接收请求响应,一种按照一定的规则,自动地抓取互联网信息的程序。原则上,只要是浏览器(客户端)能做的事情,爬虫都能够做python编程代码画樱花。为什么我们要使用爬虫?互联网大数据时代,给予我们的是生活的便利以及海量数据爆炸式的出现在网络中。过去,我们通过书籍、报纸、电视、广播或许信息,这些信息数量有限,且是经过一定的筛选,信息相对而言比较有效,但是缺点则是信息面太过于狭窄了。

Fixf4556的博客 1301

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

初中生自学python能学成吗,中学生学python书籍推荐

爬虫网络爬虫(又被称为网页蜘蛛,网络机器人)就是模拟浏览器发送网络请求,接收请求响应,一种按照一定的规则,自动地抓取互联网信息的程序。原则上,只要是浏览器(客户端)能做的事情,爬虫都能够做python编程代码画樱花。为什么我们要使用爬虫?互联网大数据时代,给予我们的是生活的便利以及海量数据爆炸式的出现在网络中。过去,我们通过书籍、报纸、电视、广播或许信息,这些信息数量有限,且是经过一定的筛选,信息相对而言比较有效,但是缺点则是信息面太过于狭窄了。

2301_81900439的博客 1042

python爬取数据并存到excel,python爬取数据的意义

爬虫的学习按照任务驱动的方式进行,最终实现douban电影Top250的基本信息抓取,包括电影的名称、douban评分、评价数、电影概括、电影链接等。后续会再以可视化的方式展现,比如统计图。是什么网络爬虫是一种按照特定规则,自动抓取互联网信息的程序或者脚本。由于互联网数据的多样性和资源的有限性,如今根据用户需求定向抓取相关网页并分析已经成为了主流的爬取策略。能做什么我们可以爬取自己想看的视频、各种图片,只要是能够通过浏览器访问的数据都可以用它进行爬取。

2401_85306094的博客 809

中学生可以这样学python,中学生学python书籍推荐

爬虫网络爬虫(又被称为网页蜘蛛,网络机器人)就是模拟浏览器发送网络请求,接收请求响应,一种按照一定的规则,自动地抓取互联网信息的程序python编程代码画爱心。原则上,只要是浏览器(客户端)能做的事情,爬虫都能够做。为什么我们要使用爬虫?互联网大数据时代,给予我们的是生活的便利以及海量数据爆炸式的出现在网络中。过去,我们通过书籍、报纸、电视、广播或许信息,这些信息数量有限,且是经过一定的筛选,信息相对而言比较有效,但是缺点则是信息面太过于狭窄了。

wenangou6 921

python如何获取网页内容_python如何获取网页内容

python如何获取网页内容发布时间:2020-09-21 15:15:32来源:亿速云阅读:62作者:小新这篇文章主要介绍了python如何获取网页内容,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。Python用做数据处理还是相当不错的,如果你想要做爬虫,Python是很好的选择,它有很多已经写好的类包,只要调用,即可完成很多复杂的功...

weixin_35085438的博客 3726

零基础python背记手册下载,python入门必背单词

爬虫网络爬虫(又被称为网页蜘蛛,网络机器人)就是模拟浏览器发送网络请求,接收请求响应,一种按照一定的规则,自动地抓取互联网信息的程序。原则上,只要是浏览器(客户端)能做的事情,爬虫都能够做python编程代码画樱花。为什么我们要使用爬虫?互联网大数据时代,给予我们的是生活的便利以及海量数据爆炸式的出现在网络中。过去,我们通过书籍、报纸、电视、广播或许信息,这些信息数量有限,且是经过一定的筛选,信息相对而言比较有效,但是缺点则是信息面太过于狭窄了。

2401_85476181的博客 812

python爬虫之 XPath 结合 requests 爬取豆瓣网站 存储格式可选 有 json、csv、txt

因为项目需要,最近在爬取非遗相关的网站,但目标url 有做源码的保护,不同元素的辨识度特别低,点开审查网页,好几个关键字都是cye-Im-tag 就打算用XPath获取节点信息 嘻嘻,这边引用大佬wsmrzx的爬取猫眼电影TOP250电影信息 废话不多说,上链接 猫眼爬取 大佬写得很详细,user-agent改一下即可哈 关于lxml库的安装 只需要执行: pip install lxml 不知道为什么,使用这个命令安装,一次成功的很少,不知道为啥,就是各种报错 那就先执行命令,安装wheel库 pip

weixin_44412468的博客 442

课后作业-团队编程项目总结

平台地址:https://gitee.com/nuII/Douban-Top250 团队名称:一个 组长:刘金朋 组员:李明轩,焦广鑫,单柱铭,刘壮,罗荣泽 总结:通过这次项目,我们学习到了关于python爬虫的相关知识,还有beautifulsoup插件的使用。 刚才是做这个项目的时候,我的内心是崩溃的,因为我并不知道什么叫爬虫,百度了一下才知道有这个东西。 我们开始做这个项目之后我...

weixin_30399797的博客 89

爬虫基础知识与高级应用

请在您的文章中标注出您所借鉴的部分,以尊重原作者的劳动成果。有些网页使用JavaScript动态加载数据,传统的爬虫无法直接获取这些数据。本文将介绍爬虫的基础知识以及高级应用,帮助您理解爬虫技术的原理、应用场景和实现方法。网站为了防止被爬虫抓取,会采取一些反爬虫措施,如验证码、IP封禁等。发送HTTP请求:爬虫向目标网站发送HTTP请求,获取网页内容。爬虫获取的数据通常需要进行清洗和整理,然后存储到数据库或文件中。解析网页:爬虫解析网页内容,提取所需的数据。存储数据:爬虫将数据存储到数据库或文件中。

优快云7689的博客 1251

20232218 张均钰 2023-2024-2 《Python程序设计》实验四报告

课程:《Python程序设计》班级: 2322班姓名: 张均钰学号: 20232218实验教师:王志强实验日期:2024年5月15日必修/选修: 公选课。

weixin_42534325的博客 940

一个入门级python爬虫教程,非常详细!良心分享!

本文目的:根据本人的习惯与理解,用最简洁的表述,介绍爬虫的定义、组成部分、爬取流程,并讲解示例代码。

Everly_的博客 158
上一篇: android 8.0 应用启动崩溃?
下一篇: 自己实现floatactionbutton展开折叠功能
和小胖
博客等级 码龄12年 8粉丝 42原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值