同样是追星 ,为什么他们能这么做

使用-flat.vmdk文件恢复ESXI虚拟机的vmdk文件 解决flat.vmdk文件丢失恢复问题 阅读详情

最近我朋友疯狂迷恋韩国的偶像团体防弹少年团,于是拜托我帮忙写一段程序实时检测韩国新闻网站instiz旗下两个板块pt和clip,当出现自家idol的新闻时,程序能自动发微博通知她。我觉得这个功能还是蛮有意思的,程序实现起来并不复杂,而且妹子的请求不好意思拒绝,所以就答应她了。说干就干,程序实现如下。

模拟登录微博

发微博的功能如果借助微博的api其实很简单,然而当我注册站内应用获得APPKEY和ACCESS_TOKEN时,审核了2天竟然被拒了(当然也有可能是自己填的太随意哈)。不过懒得等的我干脆自己模拟浏览器登录发微博。

首先我们需要分析模拟登陆需要提交的表单,打开chrome分析登录时https://login.sina.com.cn/sso/login.php?client=ssologin.js(v1.4.19) 需要提交的表单,可以发现有以下信息需要我们注意:

其中servertime,nonce,rsakv应该来自之前get到的数据,翻之前的url请求,注意到有一个prelogin的url值得我们注意,观察返回来的数据:

{"retcode":0,
"servertime":1537519779,
"pcid":"gz-7b560c8c199aa33a6b201149095489a4d147","nonce":"H6ITP0","pubkey":"EB2A38568661887FA180BDDB5CABD5F21C7BFD59C090CB2D245A87AC253062882729293E5506350508E7F9AA3BB77F4333231490F915F6D63C55FE2F08A49B353F444AD3993CACC02DB784ABBB8E42A9B1BBFFFB38BE18D78E87A0E41B9B8F73A928EE0CCEE1F6739884B9777E4FE9E88A1BBE495927AC4A799B3181D6442443",
"rsakv":"1330428213",
"is_openlock":0,
"lm":1,
"smsurl":"https:\/\/login.sina.com.cn\/sso\/msglogin?entry=weibo&mobile=18800190793&s=f0cd668a3b51745b707c94f41a090c98",
"showpin":0,
"exectime":110}

里面也确实有我们需要的数据,那么另外两个su以及sp应该就是加密之后的username和password了,然而网站如何加密的呢?

仔细观察的话会有一个ssologin.js的文件在prelogin和login中都有出现,猜测加密应该是在这里面完成的,这个文件很大,但我们只需要搜我们自己想要的,果然找到了如下代码:

request.su=sinaSSOEncoder.base64.encode(urlencode(username))

RSAKey.setPublic(me.rsaPubkey,"10001");

password=RSAKey.encrypt([me.servertime,me.nonce].join("\t")+"\n"+password)

OK,将这段js代码翻译成python代码就可以了,完整的代码如下所示:

importrequests

importbase64

importre

importrsa

importjson

importbinascii

importtime

classweibo(object):

def__init__(self, username, password):

self.username = username

self.password = password

defencrypted_username(self):

# 对用户名加密,返回su

returnbase64.b64encode(bytes(self.username, encoding="utf-8")).decode("utf-8")

defencrypted_password(self):

# 对密码加密,返回sp

data=self.get_prelogin_data()

rsa_e=65537

password_str=str(data["servertime"])+"\t"+str(data["nonce"])+"\n"+self.password

key=rsa.PublicKey(int(str(data["pubkey"]),16), rsa_e)

password_encrypt=rsa.encrypt(password_str.encode("utf-8"), key)

returnbinascii.b2a_hex(password_encrypt).decode("utf-8")

defget_prelogin_data(self):

# 以json格式返回prelogin的数据

url ='http://login.sina.com.cn/sso/prelogin.php?entry=weibo&callback=sinaSSOController.preloginCallBack&su=&'+ self.encrypted_username() +'&rsakt=mod&checkpin=1&client=ssologin.js(v1.4.18)'

withrequests.Session()assess:

r=sess.get(url, timeout=2)

pattern = re.compile(r"\((.*)\)")

data = pattern.search(r.text).group(1)

json_data=json.loads(data)

returnjson_data

deflogin_and_send(self, text):

prelogin_data=self.get_prelogin_data()

data={

"entry":"weibo",

"gateway":"1",

"from":"",

"savestate":"7",

"qrcode_flase":"false",

"useticket":"1",

"pagerefer":r"http://passport.weibo.com/visitor/visitor?entry=miniblog&a=enter&url=http%3A%2F%2Fweibo.com%2F&domain=.weibo.com&ua=php-sso_sdk_client-0.6.14",

"vsnf":"1",

"su":self.encrypted_username(),

"service":"miniblog",

"servertime":prelogin_data['servertime'],

"nonce":prelogin_data['nonce'],

"pwencode":"rsa2",

"rsakv":prelogin_data['rsakv'],

"sp":self.encrypted_password(),

"sr":"1680*1050",

"encoding":"UTF-8",

"prelt":"122",

"url":"https://weibo.com/ajaxlogin.php?framelogin=1&callback=parent.sinaSSOController.feedBackUrlCallBack",

"returntype":"META"

}

url ='http://login.sina.com.cn/sso/login.php?client=ssologin.js(v1.4.18)'

headers = {

"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.87 Safari/537.36"

}

#设置发微博时需要提交的表单

weibo_data={

"location":"v6_content_home",

"appkey":"",

"style_type":"1",

"pic_id":"",

"text": text,

"pdetail":"",

"rank":"1",#设置仅自己可见,如果对所有人可见改为0

"rankid":"",

"module":"stissue",

"pub_type":"dialog",

"_t":"0",

}

weibo_headers = {

"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.87 Safari/537.36",

"referer":""

}

withrequests.Session()assess:

r=sess.post(url, headers=headers, data=data, timeout=2, allow_redirects=True)

pattern1=re.compile(r"location\.replace\(\'(.*)\'\)")

pattern2=re.compile(r"userdomain\":\"(.*)\"},")

redirent_url=pattern1.search(r.content.decode("GBK")).group(1)

r1=sess.get(redirent_url)

login_url="https://weibo.com/"+ pattern2.search(r1.content.decode("utf-8")).group(1)

r2=sess.get(login_url)

weibo_headers["referer"]=r2.url

login_url1="https://weibo.com/aj/mblog/add?ajwvr=6&__rnd="+str(int(time.time()*1000))

r3=sess.post(login_url1, headers=weibo_headers, data=weibo_data, timeout=2)

if(r3.status_code==requests.codes.ok):

print("send weibo successfully!!!")

else:

print("there is something wrong!!!")

if__name__ =='__main__':

wb=weibo("***","***")

wb.login_login_send("这是一段测试文本")

然后你不用申请key也能写个自动发微博的程序了,当然能申请key最好啦。

监测新闻网站,自动发微博

这一点实现很简单,定义几个关键词,每隔60s爬取一次新闻网站,如果新出的新闻标题中包含关键词,就把新闻的标题和链接发到微博,程序的实现如下:

importre

importrequests

frombs4importBeautifulSoup

importtime

fromWeiboimportweibo

KEYWORDS = ["BTS","방탄소넌단","김석진","김남준","민윤기","정호석","박지민","김태형","전정국"]

classNewsSpider(object):

"""docstring for NewsSpider"""

def__init__(self):

super(NewsSpider, self).__init__()

self.url=["http://www.instiz.net/pt","http://www.instiz.net/clip"]

self.newslist=[]

self.wb=weibo("***","***")

print("complete initializing")

defcheckkeywords(self, title):

isinclude=False

forkeywordsinKEYWORDS:

ifkeywordsintitle:

isinclude=True

returnisinclude

defupdatenewslist(self, url):

withrequests.Session()assess:

r=sess.get(url, timeout=2)

soup=BeautifulSoup(r.content,"lxml")

listsubject=soup.find_all(id="subject")

forsubjectinlistsubject:

pattern = re.compile(r'\d{6,7}')

href=subject.a.get('href')

id=pattern.search(href)

ifid.group():

title=subject.a.text

ifself.checkkeywords(title)andid.group()notinself.newslist:

self.newslist.append(id.group())

self.updateWeibo(url+"/"+id.group(), title)

defrunforever(self):

i=0

failnum=0

while(1):

try:

self.updatenewslist(self.url[i])# 两个板块,交替执行

failnum=0

exceptExceptionase:

# 如果由于某些问题连续失败,比如ip被ban,记录失败次数,连续60次失败通知

failnum=failnum+1

iffailnum>=60:

print("There is something wrong with your code!!!")

failnum=0

finally:

i=(i+1)%2

time.sleep(30)

defupdateWeibo(self, newsurl, newstitle):

text="你的偶像们又有新消息了:"+newstitle+"。详情查看链接->"+newsurl

print(text)

self.wb.login_and_send_message(text)

if__name__ =='__main__':

ns=NewsSpider()

ns.runforever()

具体效果如图:

后记

当我帮程序交到妹子手上 ,就没有然后了。果然是badiaowuqing啊~

这波教程不点个赞,不关注一下说不过去吧?


对爬虫技术感兴趣的同学可以加群705673780,一起探讨,交流学习~


这边是我的一个微信公众号,分享Python最新技术,学习方法的一个公众号,有兴趣的朋友可以关注一哈

 

SKUA-GOCAD入门教程-第二节 软件启动及项目设置 阅读详情

相关推荐

深入解析Flex NOC总线驱动的实时带宽与延迟优化策略

本文深入解析了Flex NOC总线驱动的核心价值与优化策略。通过解读`/proc/noc/real_time`中的实时带宽与延迟数据,并结合`sysfs`接口进行动态QoS调优,可以有效解决芯片内部数据拥堵问题。文章以智能摄像头和算力盒子的实际案例,详细说明了如何通过优先级调整、带宽限制和参数优化,提升系统在复杂任务下的实时性与稳定性。

weixin_29289821的博客 284

用Python让蔡徐坤在我的命令行里打篮球~技术流追星!

「2019 Python开发者日」倒计时三天,请扫码咨询 ↑↑↑作者|雇个城管打天下,理工男一枚。南京大学软件工程系硕士,一个还在做着拥有十万读者梦的互联网新人,或许...

Python大本营的博客 4295

半导体关键系统之RMS浅谈

这种系统还要求设备在设备上的配方发生变化时通知工厂主机,并需要与EAP(Equipment Automation Process)联结,旨在实时管控自动化系统所用配方与用户当初的设定是否匹配,从而使得自动化系统所用的配方更加趋于安全。例如,制药行业中的药品生产管理系统(GMP),它对药品的生产过程进行严格控制,包括原材料的采购、生产工艺流程、质量控制等方面。这些系统通常与企业的生产系统集成,能够对产品的配方进行精细化管理,包括配方的设计、试验、验证、生产等环节。

阿拉伯梳子的专栏 6155

Python爬虫实战(五) 爬取微博明星粉丝基本信息+可视化

        微博有关的爬虫,由于根据网址的不同,可分为三种类型:         1.移动端爬取:利用selenium去模拟登录然后再去爬取,比较麻烦,但是可以根据关键词进行指定爬取。         2.手机端爬取:这在我之前的博客中提到过微博超话内容爬取,在此不再

shine4869的博客 1万+

UE4 GamePlay框架深度解析:从蓝图到C++构建多人游戏核心

在游戏开发与实时交互应用领域,一套清晰、可扩展的底层框架是项目成功的关键。GamePlay框架作为虚幻引擎(UE4/UE5)的核心架构,定义了游戏世界中对象交互、状态管理与网络同步的基本原理。它通过职责分离的设计模式,将游戏规则(GameMode)、全局状态(GameState)、玩家状态(PlayerState)、可操控实体(Pawn/Character)及其控制器(Controller)等核心类有机组织起来,确保了逻辑的清晰性与多人游戏数据的一致性。其技术价值在于为开发者提供了一套经过验证的最佳实践,大

weixin_33924770的博客 619

STM32接入CH340芯片的升级电路及初始化进入升级模式(死机)问题处理

MCU-REST 在 MCU-BOOT0 处于低电平状态下,进行下拉操作,在MCU-REST 与 MCU-BOOT0 恢复正常电平时,将导致MCU死机,MCU-REST 先于 MCU-BOOT0 下拉可解决该问题;MCU-REST 在 上升沿结束时将判断 MCU-BOOT0 的状态,MCU-BOOT0 处于高电平,MCU死机,MCU-BOOT0 处于低电平 MCU 正常;

LuDvei的博客 2491

python爬微博粉丝的信息_python一键追星,爬取个人微博主页下的图片

一键追星,爬取个人微博主页下的图片追星族,喜爱明星微博下发的个人照片,一个一个图片下载觉得麻烦,python爬虫教你一键爬取个人微博主页下的图片image搜索自己喜欢的个人微博主页(用户):此处选择第一个(并且进入其个人主页)imageimage我们的目标(爬取onIyU-IU中国首站)主页下发布的所有图片按F12此处用的百度浏览器,刷新并且选择XHr,image以看见有三个getindex?ui...

weixin_31423211的博客 493

uniapp(微信小程序) - 实现uniapp小程序电子签名板,横屏手写姓名签名专用写字画板,客户专用签字板,手写签名签字画板组件,手写签名,(详细运行示例,一键复制开箱即用)

uniapp实现微信小程序的电子签名效果,uniapp微信小程序 电子签名 写字板,用uniapp实现微信小程序的电子签名,uniapp微信小程序canvans实现手写签名,记录一个uniapp写的小程序的手写板,横屏,用于签名,unniapp实现电子签名,uniapp怎么做横屏的手写签名,uniapp如何实现签字板,uniapp小程序平台下怎么做电子签名板组件,uniapp电子签名插件,uniapp最好用的电子写字板插件组件源码,实现uniapp 手写签名功能,手写板、签字板,uni-app插件市场最好的

✅ 精选推荐文章 1万+

利用Python爬取朋友圈数据,爬到你开始怀疑人生

人生最难的事是自我认知,用Python爬取朋友圈数据,让我们重新审视自己,审视我们周围的圈子。

jacky_zhuyuanlu的博客 3万+

基于Simulink的H∞鲁棒控制器设计与仿真建模示例

本文介绍了基于Simulink的H∞鲁棒控制器设计与仿真方法。针对质量-弹簧-阻尼系统存在±50%刚度不确定性的问题,详细阐述了从构建广义被控对象、设计性能加权函数,到使用hinfsyn综合控制器的完整流程。通过Simulink仿真验证,所设计的H∞控制器在参数摄动和外部扰动下均保持良好性能,位移控制误差小于2%,扰动衰减超过20dB。相比传统PID控制,H∞方法展现出显著鲁棒性优势。文章还总结了工程实践中的加权函数调参技巧、控制器降阶方法,并展望了μ-综合等扩展方向,为处理系统不确定性提供了实用解决方案。

amy_mhd的博客 70

Week 9 10 Neural Networks

Week 9 10 Neural Networks

金州饿霸吃不饱的博客 404

Python爬虫入门学习例子之煎蛋网(福利哦)

初学Python爬虫,学习资料是这篇博客:Python爬虫入门教程 经过前边两个例子(糗事百科爬虫和百度贴吧爬虫)的学习,我自己写了一个练习的例子:爬煎蛋网的妹子图,福利哦(*^__^*)  #煎蛋网爬图 #导入了BeautifulSoup4(正则)和requests(代替urllib2,但是我不会使,还是用的lib2)包 #注意1:煎蛋的页数是倒着来的,从大往小来,输入的时候要注意 #注意2:

login_sonata的博客 4140

redhawk:STA timing data file解析

我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧?STA timing data file分为以下几个部分:• Header• Name Map• Footer这部分报告设计的基本信息,例如文件类型,设计名称,分隔符等。...

m0_61544122的博客 1155

为什么现在的小孩子都喜欢追星

我现在也很喜欢追星!所以我家人就对我看的 很紧!但是我也不知道是为什么啊!现在的小孩子都这么喜欢追星!好象追星成了生活中必不可少的!没有了追星就不知道自己该干什么!我也是这样的!每天都是在想着自己喜欢的偶像在干吗!在做什么!忙不忙!有时候想的都忘了时间!真的是太疯狂了!爸爸妈妈都说我不正常了!那些在上学的小孩子只要一放学就会去上网问问自己偶像在干吗有什么新的消息!这样上学都没心思了!就想着放学回家

xiongyanxi的专栏 656

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

基于Andriod的追星系统

关于小旭:同学们,你们好!我从事计算机毕业设计服务已经有4年的时间了,在这个过程中,我帮助了许多学生顺利完成了他们的毕业设计。我熟练掌握多种计算机开发技术,包括Java、SSM、SpringBoot、Python、微信小程序、安卓APP等,能够为同学们的毕业设计提供全方位的技术支持。同时,我还提供远程部署安装服务确保项目能够稳定运行。👇👇以下毕设均可提供远程部署安装服务,文末有微信联系方式有需要的可以添加👇👇❤️❤️同学们在毕业设计选题、项目开发以及论文编写过程中遇到的任何问题,都可以随时留言咨询,

2301_79657448的博客 1192

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

腾讯都看不下去了,微信新增群投诉功能:专治无底线追星势力

微信推出饭圈违规群聊举报功能 11月8日,有媒体报道,微信在用户投诉页面新增一项“粉丝无底线追星行为”,如果用户的微信群里存在无脑吹捧明星行为的群聊,可以通过这项功能进行举报。最近不少平台都在推出整治饭圈乱象的举措,作为国内最主要的聊天工具微信肯定也得跟进。 人民日报也曾痛批极度畸形和病态的流量市场,粉丝花钱打榜刷数据,甚至还要拉拢其他人为自己的“爱豆”花钱,购买周边等粉丝产品。粉丝为了维护偶像的形象,往往会通过建立粉丝群、利用营销号等方式进行骂战或者互撕,严重影响互联网环境。 不过,小雷.

m0_46163918的博客 4420

数学建模模型总结

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

他们说追星没什么用!

#追星 不是看一眼海报然后继续刷着动态,打着王者,而是看一眼海报然后继续低头奋笔疾书!(图源DY)

qq_41672428的博客 210

基于微信的追星小程序

确定好系统使用的技术,进行在线确认系统所划分的用户角色,并且根据用户角色划分确定所要设计的功能模块,对于追星小程序系统的设计主要划分别为管理员和用户角色,并所使用的功能模块也相应不同,但是系统的数据库实现的内容是交互的,用户可以随时根据自己的需求进行明星信息,对于系统工作人员可以根据自己的分管内容进行在线信息的处理及操作,管理员获取到所有用户的详细数据信息,并根据需求进行第一时间处理解决。技术,数据库进行平台的搭建开发,确认好使用的技术进行技术分析,所使用的技术是否可以完成追星小程序的实现。

qiufangtaowvnyyidtf的博客 786

基于微信的追星小程序+ssm

Java目 录摘 要Abstract第一章 绪 论1.1选题背景1.2研究现状1.3研究内容第二章 开发工具及关键技术介绍2.1微信开发者工具2.2小程序框架以及目录结构介绍2.3 JAVA技术2.4 Mysql数据库2.5 SSM框架第三章 系统分析3.1需求分析3.2可行性分析3.2.1技术可行性:技术背景3.2.2经济可行性3.2.3操作可行性:3.3性能分析3.4系统操作流程3.4.1管理员登录流程3.4.2信息添加流程3.4.3信息删除流程第四章 系统设计与实现4.1系统架构设计。

qq_30169035的博客 1273

基于springboot的追星网站毕业设计源码

其次,基于Spring Boot的追星网站提供了丰富的互动功能,如留言评论、投票打榜等,让粉丝们能够与偶像进行实时互动,增加了粉丝参与感和归属感。此外,基于Spring Boot的追星网站还可以提供在线商城,粉丝们可以通过购买偶像的周边产品来表达对偶像的支持和喜爱,同时也可以更加方便地管理自己的消费。随着互联网的迅速发展,人们的娱乐方式也在不断变化和更新。综上所述,基于Spring Boot的追星网站在满足基本需求的同时,可以通过以上创新点进一步提升用户体验和吸引力,吸引更多的粉丝和用户参与进来。

737

追星综合症 celebrity worship syndrome

明星和粉丝,似乎已经是无处不在的话题。有狂热粉丝会为偶像明星自杀,也会有体贴的明星走到哪里都带着自己的“妈妈团”。其实,喜欢或欣赏某个明星是很正常的,只是,如果这种喜爱程度过深而演变成病态,患上celebrity worship syndrome,那就需要注意了。In this media-saturated world, celebrity is a growing new power.

张彤的专栏 867

【精品毕设推荐】基于微信小程序的追星小程序设计与实现

追星小程序的设计主要是对系统所要实现的功能进行详细考虑,确定所要实现的功能后进行界面的设计,在这中间还要考虑如何可以更好的将功能及页面进行很好的结合,方便用户可以很容易明了的找到自己所需要的信息,还有系统平台后期的可操作性,通过对信息内容的详细了解进行技术的开发。

tyler的博客 1143

豆包谈追星

追星本质上是一种复杂的情感投射与自我建构行为,不同人追的对象、动机和收获千差万别,但核心可以归结为“对理想自我的向往”与“情感需求的寄托”两大维度。

2401_87316040的博客 639

Springboot计算机毕业设计追星小程序【附源码】开题+论文+mysql+程序+部署

最后,在用户管理方面,我们将实现用户注册、登录、个人信息管理等功能,同时结合用户的行为数据和兴趣偏好,提供个性化的推荐服务,提高用户的使用体验。因此,开发一款追星小程序,整合明星信息,提供个性化的追星体验,成为了满足粉丝需求的重要途径。追星小程序不仅能够为粉丝提供及时、准确的明星资讯,还能促进粉丝间的互动与交流,为追星文化的发展注入新的活力。在开发追星小程序的过程中,我们将重点关注以下问题的解决:一是如何设计合理的明星分类体系,确保分类的准确性和实用性;三是如何设计合理的信息展示方式,提高用户的阅读体验;

光冯毕设程序 1009

追星已成为许多年轻人,学生生活的一部分

它要求我们在追星过程中保持清醒的头脑和适度的热情,尊重明星的隐私和个人空间,客观评价明星的作品,避免盲目跟风和过度消费。只有这样,我们才能真正享受到追星带来的乐趣和收获,同时保持自己的独立和自主。我们要明确自己的价值观和人生目标,避免让追星成为生活的全部,避免为此耽误了自己的学习和工作,从而葬送了自己的一生。我们要根据自己的经济能力和实际需求,合理安排自己的消费计划,避免造成不必要的经济负担。通过欣赏和评价明星的作品,我们可以提高自己的审美能力和批判性思维,从而更加理性地看待追星现象。

xie254698213的博客 456

gz是什么意思饭圈_为什么饭圈如此“反智”,还被称为一种文化?疯狂粉丝请文明追星...

为什么饭圈如此“反智”,还被称为一种“文化”?饭圈不知道什么时候,被一些人定义为了文化。或许文化的定义很广泛,也很难将饭圈划出文化之外。但是饭圈如果是文化,可能是缺少矫正的文化,更像是一种“畸形”文化。而且在饭圈的影响下,形成了一个特殊的群体,饭圈女孩。她们将自己的思想交给了自己认为的“正主”,甘心成为别人思想的附庸者,甚至成为了装下他人思想的皮囊。可怕的是在资本的运作和推动下,一些人通过控制营销...

weixin_39617044的博客 4404
上一篇: Python 爬取煎蛋妹子图
下一篇: 都是学 AI,为什么别人薪资比你高?
AI女神
博客等级 码龄8年 78粉丝 71原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值