破解校内的图片识别码。

图像识别代码 人脸识别 立即下载

 

using System;
using System.Collections.Generic;
using System.Text;
using System.Drawing;

namespace XiaoNei.VerifyImage
{
    
public static class Verify
    
{
        
private static int[,] imageDatas;
        
private static String code;
        
private static Bitmap image;

        
/**//// <summary>
        
/// 获取验证码
        
/// </summary>
        
/// <param name="filename">输入文件名</param>
        
/// <returns>验证码</returns>

       
        
public static String getCode(String filename)      
        
{
            Bitmap image 
= new Bitmap(filename);
            readDatas(image);
            code 
= "" + getBestCode(getSimple(3, 5)) +
                    getBestCode(getSimple(
3, 13)) +
                    getBestCode(getSimple(
3, 21)) +
                    getBestCode(getSimple(
3, 29));
            Console.WriteLine(code);

            
//测试识别是否正确,文件名中含有验证码
            
//if (filename.IndexOf(code) < 0)
               
// Console.WriteLine("Error");
            return code;
        }


        
/**//// <summary>
        
/// 初始化数据
        
/// </summary>

        private static void readDatas(Bitmap image)
        
{

            imageDatas 
= new int[image.Height, image.Width];
            Color pixelColor;
            
for (int h = 0; h < image.Height; h++)
            
{
                
for (int w = 0; w < image.Width; w++)
                
{
                    pixelColor 
= image.GetPixel(w, h);

                    imageDatas[h, w] 
= pixelColor.R > 0 ? 1 : 0;
                }
//for
            }
//for
        }

        
/**//// <summary>
        
/// 取数字块
        
/// </summary>
        
/// <param name="x">横坐标</param>
        
/// <param name="y">纵坐标</param>
        
/// <returns>一维数组</returns>

        private static int[] getSimple(int x, int y)
        
{
            
int[] simple = new int[9 * 6];
            
int count = 0;
            
for (int h = x; h < x + 9; h++)
            
{
                
for (int w = y; w < y + 6; w++)
                
{
                    simple[count
++] = imageDatas[h, w];
                }

            }

            
return simple;
        }

        
/**//// <summary>
        
/// 最和谐的数字
        
/// </summary>
        
/// <param name="x">数字块</param>
        
/// <returns>结果</returns>

        private static int getBestCode(int[] x)
        
{
            
int bestNumber = -1;
            
double bestVal = 0.0;
            
for (int index = 0; index < 10; index++)
            
{
                
double val = compareSimple(NumberData.getNumber(index), x);
                
if (bestVal <= val)
                
{
                    bestVal 
= val;
                    bestNumber 
= index;
                }

            }

            
return bestNumber;
        }

        
/**//// <summary>
        
/// 获取两个数字图像数组的和谐百分比
        
/// </summary>
        
/// <param name="t">匹配数字数组</param>
        
/// <param name="x">待匹配数字数组</param>
        
/// <returns>和谐百分比</returns>

        private static double compareSimple(int[] t, int[] x)
        
{
            
int count = 0;
            
int val = 0;
            
for (int i = 0; i < t.Length; i++)
            
{
                
if (1 == t[i])
                
{
                    count
++;
                    
if (1 == x[i])
                    
{
                        val
++;
                    }

                }

            }

            
return (val + 0.0) / count;
        }

    }



}


最近在做一个校内刷人气的小工具,顺便把图像识别搞了一下。 把源代码贴出来。请高手指教。

using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Net; 
using System.IO;
using System.Text;

namespace XiaoNei.VerifyImage
{
   
public  class DownLoadImage
    
{
        
/// <summary>
        
/// 从图片地址下载图片到本地磁盘
        
/// </summary>
        
/// <param name="ToLocalPath">图片本地磁盘地址</param>
        
/// <param name="Url">图片网址</param>
        
/// <returns></returns>

        public static bool SavePhotoFromUrl(string FileName, string Url)
        
{
            
bool Value = false;
            WebResponse response 
= null;
            Stream stream 
= null;

            
try
            
{
                HttpWebRequest request 
= (HttpWebRequest)WebRequest.Create(Url);

                response 
= request.GetResponse();
                stream 
= response.GetResponseStream();

                
if (!response.ContentType.ToLower().StartsWith("text/"))
                
{
                    Value 
= SaveBinaryFile(response, FileName);

                }


            }

            
catch (Exception err)
            
{
                
string aa = err.ToString();
            }

            
return Value;
        }

        
/// <summary>
        
/// Save a binary file to disk.
        
/// </summary>
        
/// <param name="response">The response used to save the file</param>

        // 将二进制文件保存到磁盘
        private static bool SaveBinaryFile(WebResponse response, string FileName)
        
{
            
bool Value = true;
            
byte[] buffer = new byte[1024];

            
try
            
{
                
if (File.Exists(FileName))
                    File.Delete(FileName);
                Stream outStream 
= System.IO.File.Create(FileName);
                Stream inStream 
= response.GetResponseStream();

                
int l;
                
do
                
{
                    l 
= inStream.Read(buffer, 0, buffer.Length);
                    
if (l > 0)
                        outStream.Write(buffer, 
0, l);
                }

                
while (l > 0);

                outStream.Close();
                inStream.Close();
            }

            
catch
            
{
                Value 
= false;
            }

            
return Value;
        }



    }

}

 

 

using System;
using System.Collections.Generic;
using System.Text;

namespace XiaoNei.VerifyImage
{
    
public class NumberData
    
{

        
public static int[] getNumber(int n)
        
{
            
switch (n)
            
{
                
case 0: { return num0; }
                
case 1: { return num1; }
                
case 2: { return num2; }
                
case 3: { return num3; }
                
case 4: { return num4; }
                
case 5: { return num5; }
                
case 6: { return num6; }
                
case 7: { return num7; }
                
case 8: { return num8; }
                
case 9: { return num9; }
                
default: { return num0; }
            }

        }





        
public static int[] num0 = {
        
0,0,1,1,0,0,
        
0,1,0,0,1,0,
        
1,0,0,0,0,1,
        
1,0,0,0,0,1,
        
1,0,0,0,0,1,
        
1,0,0,0,0,1,
        
1,0,0,0,0,1,
        
0,1,0,0,1,0,
        
0,0,1,1,0,0
    }
;

        
public static int[] num1 = {
        
0,0,1,1,0,0,
        
0,1,0,1,0,0,
        
0,0,0,1,0,0,
        
0,0,0,1,0,0,
        
0,0,0,1,0,0,
        
0,0,0,1,0,0,
        
0,0,0,1,0,0,
        
0,0,0,1,0,0,
        
0,1,1,1,1,1
    }
;

        
public static int[] num2 = {
        
1,1,1,1,0,0,
        
0,0,0,0,1,0,
        
0,0,0,0,1,0,
        
0,0,0,0,1,0,
        
0,0,0,1,0,0,
        
0,0,1,0,0,0,
        
0,1,0,0,0,0,
        
1,0,0,0,0,0,
        
1,1,1,1,1,0
    }
;

        
public static int[] num3 = {
        
1,1,1,1,0,0,
        
0,0,0,0,1,0,
        
0,0,0,0,1,0,
        
0,0,0,1,0,0,
        
0,1,1,0,0,0,
        
0,0,0,1,0,0,
        
0,0,0,0,1,0,
        
0,0,0,0,1,0,
        
0,1,1,1,0,0
    }
;

        
public static int[] num4 = {
        
0,0,0,0,1,0,
        
0,0,0,1,1,0,
        
0,0,1,0,1,0,
        
0,1,0,0,1,0,
        
1,0,0,0,1,0,
        
1,1,1,1,1,1,
        
0,0,0,0,1,0,
        
0,0,0,0,1,0,
        
0,0,0,0,1,0
    }
;

        
public static int[] num5 = {
        
1,1,1,1,1,0,
        
1,0,0,0,0,0,
        
1,0,0,0,0,0,
        
1,1,1,0,0,0,
        
0,0,0,1,0,0,
        
0,0,0,0,1,0,
        
0,0,0,0,1,0,
        
0,0,0,1,0,0,
        
1,1,1,0,0,0
    }
;
        
public static int[] num6 = {
        
0,0,1,1,1,1,
        
0,1,0,0,0,0,
        
1,0,0,0,0,0,
        
1,0,1,1,0,0,
        
1,1,0,0,1,0,
        
1,0,0,0,0,1,
        
1,0,0,0,0,1,
        
0,1,0,0,1,0,
        
0,0,1,1,0,0
    }
;
        
public static int[] num7 = {
        
1,1,1,1,1,1,
        
0,0,0,0,0,1,
        
0,0,0,0,1,0,
        
0,0,0,1,0,0,
        
0,0,0,1,0,0,
        
0,0,1,0,0,0,
        
0,0,1,0,0,0,
        
0,1,0,0,0,0,
        
0,1,0,0,0,0
    }
;

        
public static int[] num8 = {
        
0,1,1,1,1,0,
        
1,0,0,0,0,1,
        
1,0,0,0,0,1,
        
0,1,0,0,1,0,
        
0,1,1,1,1,0,
        
1,0,0,0,0,1,
        
1,0,0,0,0,1,
        
1,0,0,0,0,1,
        
0,1,1,1,1,0
    }
;

        
public static int[] num9 = {
        
0,0,1,1,0,0,
        
0,1,0,0,1,0,
        
1,0,0,0,0,1,
        
1,0,0,0,0,1,
        
0,1,0,0,1,1,
        
0,0,1,1,0,1,
        
0,0,0,0,0,1,
        
0,0,0,0,1,0,
        
1,1,1,1,0,0
    }
;

    }


}


 

 

 

科技中介服务机构如何利用数智工具提升服务效率?.docx 科技中介服务机构如何利用数智工具提升服务效率? 立即下载

相关推荐

基于非对称纳什谈判的多微网电能共享运行优化策略(Matlab代码实现)

基于非对称纳什谈判的多微网电能共享运行优化策略(Matlab代码实现)内容概要:本文档标题为《Plecs全桥LLC谐振变换器仿真模型.txt》,但实际上内容并未围绕Plecs或全桥LLC谐振变换器展开详细论述,而是罗列了大量基于Matlab/Simulink和Python的科研仿真项目标题及相关技术方向,涵盖电力系统、无人机控制、微电网优化、路径规划、状态估计、信号处理、电动汽车调度、电力电子变换器等多个领域。其中包括多种优化算法(如粒子群、遗传算法、NSGA-II)、控制策略(如PID、MPC、滑模控制)、仿真建模(如LLC谐振变换器、DAB变换器、PWM整流器)以及具体应用场景的研究实现。尽管提及“隔离型全桥LLC谐振变换器建模及参数设计资料”,但全文缺乏对该主题的具体描述、模型细节或仿真分析,仅作为条目之一出现。因此,该文档实质是一份科研项目资源清单或代码合集目录,而非针对某一主题的深入文章。; 适合人群:具备一定Matlab/Simulink或Python编程基础,从事电气工程、自动化、控制科学、电力电子、新能源系统等相关领域的研究生、科研人员及工程技术人员。; 使用场景及目标:①为科研工作者提供丰富的课题参考与复现资源,涵盖优化调度、控制系统设计、电力电子仿真等方向;②辅助完成硕士/博士论文、期刊论文复现、课程设计或项目开发,提升研究效率与创新性;③通过已有模型和代码快速搭建仿真平台,聚焦算法改进与性能优化。; 阅读建议:此文档应作为科研资源索引使用,读者可根据自身研究方向筛选相关条目,结合配套代码与参考资料进行深入学习与实践。对于希望研究全桥LLC谐振变换器的用户,需注意本文档未提供完整内容,建议查找标注的“仿真+设计报告+计算书”等附件资源以获取详细信息。

图像识别之验证码识别

图像识别之验证码识别

qq_36616956的博客 1271

高校技术转移办公室在推动成果转化过程中,如何高效完成技术成果的信息整合与价值挖掘.docx

科易网基于AI模型+行业大数据,在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,推出科技创新领域的AI+工具与数智化解决方案,推动科技创新与产业创新智能化发展。

【2】图片验证码识别

图片验证码识别

司徒荆的博客 334

高校技术转移办公室人员,如何精准挖掘并分析企业的技术需求?.docx

科易网基于AI模型+行业大数据,在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,推出科技创新领域的AI+工具与数智化解决方案,推动科技创新与产业创新智能化发展。

隔离型全桥LLC谐振变化器建模及参数设计资料【仿真+设计报告+计算书】

内容概要:本文档是一套关于隔离型全桥LLC谐振变换器的综合性技术资料,系统涵盖了拓扑建模、参数设计、闭环控制策略及仿真验证等关键环节。资料整合了Simulink仿真模型、详细设计报告、Mathcad计算书以及控制算法说明文档,深入探讨了恒压恒流双闭环控制、变频与移相混合控制、软启动机制等核心技术,并提供了多应用场景实例,包括双向全桥LLC、多相交错LLC以及电动汽车V2G系统中的CLLC变换器设计。此外,配套资源还包含了多种先进控制与状态估计算法(如EKF、UKF、PF及其与神经网络融合算法)的Matlab实现代码,强化了科研复现与工程实践能力。; 适合人群:适用于电气工程、电力电子及相关专业的研究生、科研人员,以及从事高频开关电源、新能源变换器开发的工程师;需具备扎实的电路理论基础与一定的仿真软件操作经验。; 使用场景及目标:①支持全桥LLC变换器的高效参数设计与动态性能优化;②服务于高校或企业的科研项目,助力拓扑创新与控制系统开发;③作为毕业设计、学术论文或工业级产品原型开发的重要技术参考,提升系统效率、稳定性和响应速度。; 阅读建议:建议结合Simulink仿真模型与Mathcad计算书同步学习,重点关注谐振元件匹配、控制环路设计与系统稳定性分析,充分利用提供的Matlab/Simulink环境进行仿真调试与二次开发,深化理论认知与实际工程应用的融合。

图片验证码识别-自动登录工具开发

开发软件系统时必然会有用户登陆的模块。每次验证自己的功能时,总是绕不开输入账号密码,这已经是很麻烦的了,还得输入不好辨认的验证码。为了简化登陆步骤,我通过使用图像识别 OCR 技术,和Web应用框架Flask搭建一个验证码自动识别的服务。并结合强大的浏览器插件Tampermonkey,编写一个简单的油猴脚本,在不入侵源系统的基础上,实现不输入验证码登陆。也为后期自动化测试奠定可操作的基础。......

Sajor的博客 2790

Keil MDK安装NRF52832开发环境全攻略(附系统时间错误解决方案)

本文详细介绍了如何使用Keil MDK搭建NRF52832开发环境,包括基础软件安装、项目配置关键步骤以及常见问题解决方案。特别针对系统时间错误导致的编译失败问题提供了实用解决方法,帮助开发者快速上手NRF52832开发。

weixin_29168153的博客 505

图像识别技术——验证码识别

[1]一、数字图像处理基础 一幅图像可以定义为一个二维数组f(x,y),这里x,y是空间坐标,而在任何一对空间坐标(x,y)上的幅值f称为该点图像的强度或灰度。当x,y和幅值f为有限的、离散的数值时,称该图像为数字图像。 自然界呈现在人眼中的图像是连续的模拟信号,在计算机处理前,必须用图像传感器把光信号转换为表示亮度的电信号,再通过取样和量化得到一副数字图像。取样是对图像在坐标上进行离散化的...

weixin_33692284的博客 954

Matlab:常见涡旋光束仿真

代码: clc clear all close all %% 环形涡旋光束 N = 200; lambda = 632e-9; %波长为632nm k = 2*pi/lambda; %波数 w0 = 3; %束腰半径 x = linspace(-10,10,N); y = linspace(-10,10,N); [X,Y] = meshgrid(x,y); [t...

zzz997的博客 3万+

Allegro PCB设计小技巧:如何用Shift键快速平移复制走线和过孔?

本文深入解析了Allegro PCB设计中利用Shift键进行平移复制的核心技巧。通过对比传统复制粘贴流程,详细演示了如何高效、精准地批量复制走线和过孔,尤其适用于创建等间距电源总线、过孔阵列等场景,能显著提升PCB设计效率与准确性。

pz89012345的博客 554

不用OCR,如何实现图片验证码的自动识别

用Java实现图片验证码的自动识别,从这位“老友”第一次为我成功预约课程后,我就一直想着怎么再把她捯饬的漂亮些————把人肉识别验证码变成自动识别验证码,这样就又可以省去敲四下键盘的巨大工作量了。不过后来随着课程的完毕,自动识别验证码的想法也就被搁置了,直到今天她又重见天日。如今某家要誓补当年之憾。...............

wangleimj88的专栏 2965

python docx设置标题中文字体rPr.rFonts.set(qn(‘w:eastAsia‘),u‘黑体‘),报错‘NoneType‘ object has no attribute ‘set‘

一、我的代码: 因为要编一个报告自动化生成的代码,所以用了python docx,在设置标题自己写了一段代码,要求将标题设置成:一级标题 黑体 小四 from docx import Document from docx.oxml.ns import qn from docx.shared import Pt def add_Head(document, level, text, font, size): # document word对象 # level 几级标题 # text 标题内容 # f

qq_40272386的博客 8857

图片识别之验证码识别

许多网站在进行某些操作前会要求输入验证码以此来抵御爬虫和攻击。此篇主要讲述如何通过代码来识别一些常见的验证码。以此探究图片识别的过程以及如何避免生成容易被识别的验证码。 理论 图片识别的过程 取样本 清洗区分样本 提取样本特征 提取目标的特征与样本进行对比 操作过程 Java有丰富的图片处理类,本次操作使用java语言。 一、取目标网站的验证码样本。在web页面中查看验证码请求...

RJ0024的博客 6592

【WSN定位】基于AOA算法实现目标无源定位附matlab代码

1 简介 2 部分代码 clear all; close all; clc;​stations = [0 0 0;20 0 0]; %基站位置​X = -100:100; %生成目标位置Y = X.*sin(X);Z = X+Y;N = length(X);Locations = zeros(N,3);angs = zeros(N,4);for i = 1:N angs(i,:) = Angs(stations*1e3,[X(i),Y(i),Z(i)]*1e3);end​for

qq_59747472的博客 2308

SDR 和 DDR 的区别

SDR 和 DDR 的差别,最明显提现在传输速率和频率上。DDR SDRAM与SDRAM的基本结构是相似的,最根本的区别在于DDR 支持在一个时钟周期内传输两次数据,,SDR 只能传输一次数据。

串起点滴 1960

字符型图片验证码的识别

字符型图片验证码情境下的爬虫实现 概述 需求 访问地址:http://shixin.csrc.gov.cn/honestypub 每日请求量:万级 请求成功率要求:80%以上 请求反馈速度:5s以内 方案设计 操作系统:CentOS7 编程语言: python3(flask) 爬虫:selenium 图片识别:tesseract-OCR,PILLOW,jTessBo...

夜谷子 2034

【CANdelaStudio编辑CDD】-1.2-给$10服务SessionControl创建一个新Session会话并修改Session state machine会话状态机(UDS诊断)

前一篇:【UDS诊断描述文件CDD】-1.1-ISO_14229中$10服务理论部分https://blog.youkuaiyun.com/qfmzhu/article/details/120375515案例背景: 在CDD中如何给$10服务创建一个新的Session会话; 在CDD中如何给$10服务修改Session state machine会话状态机。 目录 1 查看$10服务中已有的Session会话​ 2 查看$10服务中已有的Session state machine会话状态机 3 在$10...

「汽车电子助手」的博客 6075

图片验证码识别

首先在我们的PyCharm中打开设置---project---Project Interpreter,添加两个插件Pillow和Pytesseract 将上面的两个插件安装成功后,再安装 tesseract-OCR.     tesseract-OCR安装包下载地址:https://github.com/tesseract-ocr/tesseract 安装完成后

cui8402401y的博客 666

系统安全性评估 (SSA) 详细解析

系统安全性评估(SSA)是一种自下而上的验证过程,目的是确保系统设计中的每个功能、子系统、硬件和软件的实现,符合早期通过 FHA 和 PSSA 设定的安全性需求。它通过对已实现的系统进行系统性综合评价,检验各项设计和安装是否符合预期的安全性目标,最终支持飞机的适航认证。飞行控制系统是飞机安全性设计的核心子系统之一,负责控制飞机的姿态和方向。为了确保飞行控制系统能够在各种飞行条件下保持安全运行,SSA 被用于验证该系统的设计是否满足 FHA 中设定的安全性目标。

qq_41854911的博客 1651

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...

常用验证码图片识别

在我们的生活中,我们遇到的验证码越来越繁杂,本文就是来解决一些常用的验证码的识别,一些较为复杂的验证码,如点选验证码,逻辑验证码等等,联系了开发者,说的是后续会逐一实现。 破解验证码无非就是两种方式,一种就是OCR识别,另一种就是比较复杂的深度学习(后者优于前者),但是深度学习听名字就知道高大上…国内除了顶尖985院校,就算是211硕士也只能来当个前后端开发人员,运气好的也许能够成为算法工程师… 那么题外话结束了,这里我们就用的深度学习的方法来实现验证码的识别,那么也许很多人都会纠结,看不懂深度学习代码怎.

上千主上-贝库塔 2625

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

图形验证码的破解与设计

图形验证码设计目的是利用人脑的不可模拟性来防止机器自动识别.但是一个设计低级的图形验证码(可以被快速破解)除了增加网络流量以外没有任何意义.网上太多的"生成验证码"的教程把重点放在如何生成图片上,而实用性却几乎为零.生成图形本身是零基础技能,任何平台都提供内存图形环境和设备上下文(DC)让你操作,vc中的CDC,java/.NET中的Graphics,都提供比你需要的还要多的绘图API.可以说介绍

诗剑书生的专栏 1万+

怀旧版电脑GBC模拟器

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

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

【成长笔记】图片验证码识别

记得很早以前,我对如携程飞猪等第三方平台购买火车票不用输入验证码感到很……牛!百度后发现其可能是实现了自动打码,或者说机器自动识别验证码,我很好奇。 后来,当我觉得我必须要给自己找些有趣的知识来学习的时候,脑海里萌生了去实现一个简单的验证码识别程序的想法。在一切未知以前,我觉得很难,甚至望而却步。但,真正一点点地行动下来,我发现,其实慢慢深入后,无论多么困难的问题,都能一点点解决。 不要着急,

portfloat的博客 3913

调用阿里API实现图片验证码识别

目 录1.作者介绍2.阿里云OCR算法介绍2.1 OCR介绍2.2 基于阿里云的OCR算法介绍3.1 实验过程3.2 实验代码3.3 实验结果 1.作者介绍 王柯欣,女,西安工程大学电子信息学院,2021级研究生 研究方向:模式识别与人工智能 电子邮件:787576194@qq.com 2.阿里云OCR算法介绍 2.1 OCR介绍 OCR,即图像文字的识别和理解;OCR前期是识别图片中的文字,即找到文字的位置,然后识别是什么字。后期在原本文字识别的基础上进行文字理解,文字理解是文字识别的一个应用。OCR根据

ZHW-鲜橙大AI课题组的博客 6568

常用验证码的识别方法

此文已由作者杨杰授权网易云社区发布。欢迎访问网易云社区,了解更多网易技术产品运营经验。全自动区分计算机和人类的图灵测试(Completely Automated Public Turing test to tell Computers and Humans Apart,简称CAPTCHA),俗称验证码,是一种区分用户是计算机和人的公共全自动程序。验证码的主要目的是强制人机交互来抵御机器自动化攻击,...

weixin_34122604的博客 1362
上一篇: 老三编码格式小工具1.0下载
下一篇: asp.net中数据库操作通用类
0x16
博客等级 码龄20年 79粉丝 50原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值