精华内容
下载资源
问答
  • 根据源代码创建.deb程序包,或仅URL下载 -“我想提供包装程序” 为此,请转到“问题”标签,并创建一个标题为“ [Package offer]”的问题 -“在哪里可以找到DEBBUILD的示例?” 文件example.debbuild 您需要将...
  • 本文向您展示了如何在Eclipse IDE中附加JDK源代码。 在Eclipse中,选择Windows->首选项-> Java->已安装的JRE ,展开rt.jar... 注意 您可能对本文感兴趣- 在哪里可以下载JDK源代码 。 参考文献 Oracl...
    
    
    展开全文
  • Class-Path告诉Java在文件系统上哪里可以找到定义这些类的文件。 对于通用Java应用程序,基于这些路径项序列,jar文件或类文件夹中搜索/加载所有类文件。 通常,开发人员希望在一个或多个jar文件中找到类,例如...
  • 最关键的,无偿的永久的提供给大家免费使用,含全部源代码。 功能简介: 一、更人性化,更全面的功能 大部分日期控件都具备这些功能,但是本日历控件做的更全面,更人性化,并且速度一流. 支持多种调用模式 除支持...
  • understand for fortran:用于分析fotran程序源代码。特别适合大型代码的结构分析。 包含软件本身(版本号为1.4.361)及...还包含了一个PERL API和C/C++ API,你可以用来写脚本和程序以便你的源代码中自动生成文档。
  • CMake脚本知道在哪里可以找到库,因此只需运行CMake脚本并生成选择的项目即可。 请注意,您仍然必须手动将所需的.DLL文件/ dlls文件夹复制到二进制文件夹中,以便二进制文件运行。 请记住,提供的库是使用特定的...
  • 您已经找到了和的源代码。 Code.org是一个非营利性组织,致力于扩大计算机科学教育的获取范围。 您可以在详细了解我们的工作。 快速开始 请遵循我们的来配置您的工作站。 rake build来构建应用程序(如果尚未构建...
  • 源代码托管在GitHub上:。 依存关系 -用于数组对象 -对于地块 文献资料 通过唯一需要的输入growthcharts.py是文件的人口child_data.csv包含孩子的: 性别 重量 长度 头围 在不同的年龄。 该文件的结构如下: 年龄 ...
  •  / 数据分析1480 & 小象相信在你的工作中可能会经常用到PPT吧,你在PPT制作过程中有没有这样的困惑,就是可以哪里找到既高清又无版权争议的图片素材呢?这里强烈推荐ColorHub,这是一个允许个人和商业用途的...
  • 那么针对这三类人,我给大家提供一个好的学习平台,免费领取视频教程,电子书籍,以及课程的源代码! QQ群:101677771 1.按F12打开调试台,再点击Network,再点击Headers,可以找到i=good,这就是我们刚才输入需要...

    一、先试着英汉翻译一波:

    很多人学习python,不知道从何学起。
    很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手。
    很多已经做案例的人,却不知道如何去学习更加高深的知识。
    那么针对这三类人,我给大家提供一个好的学习平台,免费领取视频教程,电子书籍,以及课程的源代码!
    QQ群:101677771

    1.按F12打开调试台,再点击Network,再点击Headers,可以找到i=good,这就是我们刚才输入需要翻译的词语good,from Data中的就是请求的参数,分别为:

    i: good
    from: AUTO
    to: AUTO
    smartresult: dict
    client: fanyideskweb
    salt: 15972332870677
    sign: 3a078c10344e67f95822ae9389e1363f
    lts: 1597233287067
    bv: 85c050fb1c0b4d824d801d079db7371a
    doctype: json
    version: 2.1
    keyfrom: fanyi.web
    action: FY_BY_CLICKBUTTION

     

    2.在来翻译一个新的词语,看下这些参数有无变化

    i: 我是中国人
    from: AUTO
    to: AUTO
    smartresult: dict
    client: fanyideskweb
    salt: 15972365771410
    sign: 744ebb7fd625f1d4d9d6a270e98536c2
    lts: 1597236577141
    bv: 85c050fb1c0b4d824d801d079db7371a
    doctype: json
    version: 2.1
    keyfrom: fanyi.web
    action: FY_BY_CLICKBUTTION

    发现有5个参数是变化的(实际是4 个),分别为:

    i:
    salt:
    sign:
    lts:
    bv: 

     

    3.看看URL,#http://fanyi.youdao.com/translate_o?smartresult=dict&smartresult=rule()
    请求连接:http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule 去掉translate_o中的_o,不去的话,轻轻就数据结果:某道词典  ,英语翻译汉语正常,汉语翻译英语时,出现{‘errorCode’: 50}  ,post请求方式

    4.点击Initiator,可以看到所有的js文件都是@fanyi.min.js:1

    5、点击@fanyi.min.js:1进入,

    点击中间的{ },格式化一下。

    再找到XHR/fetch Breakpoints,添加断点, 你可以针对某一个请求或者请求的关键字设置断点:

    再点一下‘+’输入url即可url为http://fanyi.youdao.com/translate_o?smartresult=dict&smartresult=rule

    最后再去点击一下翻译按钮

    6.翻译:我是中国人,点击t-translate,再点击Scope,再点击Local,再点击r,即可看到我们需要的参数,在吧鼠标放到中间的r上,r = v.generateSaltSign(n),就会弹出Object框。就是我们需要的参数。

     

    7.可以看到8941行,鼠标放到v.gen erateSaltSign(n)上,会弹出f r(e)函数,点击这个函数会进入第8368行,可以看到我们需要的参数

    salt:
    sign:
    lts:
    bv: 

    在8378行打上断点,再次点击翻译按钮,即可看多所有的参数值显示出来。

     

    8.对于第一个 ts: r,相当于pythonzhong 的ts=r赋值, 可以看到r = “” + (new Date).getTime(),知道了r,就知道了ts,r是js中 new Date().getTime()得到的是毫秒数,也就是时间戳,单位为毫秒,13位数字的字符串。

    即可用python中的时间戳构造:

    #13位时间戳获取方法:单位:毫秒
    t1 = time.time()
    ts= int(t1 * 1000)
    ts=r

    第二个参数:salt: i,相当于python中的salt= i赋值,i = r + parseInt(10 * Math.random(), 10),意思是随机产生一个整数 范围是0-9里面的一个随机数

    ts=r,转化为字符转,parseInt(10 * Math.random(), 10)产生的随机数也转化为字符串,最后进行字符串拼接,而不是数字相加。请注意一下。跟实际的赋值对比,产生了一个14位数字的字符串,跟实际情况一样。

    即可用python中的构造法:
    salt= str(int(ts))+str(random.randint(0,10))
    print(salt)

    第三个参数:bv: t,相当于python中的bv=t赋值, var t = n.md5(navigator.appVersion),navigator.appVersion的值竟然是一个     User-Agent,那么重点来了,网上教程都是md5加密相关都是直接用python原生来生成,而我就选择直接扣代码。用python3调用js的库之execjs 来扣,鼠标放到var t = n.md5(navigator.appVersion)中的n.md5()上,将会出现f md5(e)函数,点击进入,来到8196行, md5: function(e){  },把第8196行到8278行扣下来,再应用execjs解析出bv

    注意:自调函数调用写法:  

    #var aa=function(e){ }和function  aa(e){ }写法都可以,一样的

    import execjs
    f = open(r”text.js”,encoding=’utf-8′).read()
    ctx1 = execjs.compile(f)
    bv=ctx1.call(‘md5_1’,ua.random)
    print(bv)

     

    扣出来的js代码:主体为function md5_1(e) { }  ,应用execjs解析,缺什么参数找什么参数,即可

    var n = function(e, t) {
    return e << t | e >>> 32 - t
    }
    , r = function(e, t) {
    var n, r, i, a, o;
    return i = 2147483648 & e,
    a = 2147483648 & t,
    n = 1073741824 & e,
    r = 1073741824 & t,
    o = (1073741823 & e) + (1073741823 & t),
    n & r ? 2147483648 ^ o ^ i ^ a : n | r ? 1073741824 & o ? 3221225472 ^ o ^ i ^ a : 1073741824 ^ o ^ i ^ a : o ^ i ^ a
    }
    , i = function(e, t, n) {
    return e & t | ~e & n
    }
    , a = function(e, t, n) {
    return e & n | t & ~n
    }
    , o = function(e, t, n) {
    return e ^ t ^ n
    }
    , s = function(e, t, n) {
    return t ^ (e | ~n)
    }
    , l = function(e, t, a, o, s, l, c) {
    return e = r(e, r(r(i(t, a, o), s), c)),
    r(n(e, l), t)
    }
    , c = function(e, t, i, o, s, l, c) {
    return e = r(e, r(r(a(t, i, o), s), c)),
    r(n(e, l), t)
    }
    , u = function(e, t, i, a, s, l, c) {
    return e = r(e, r(r(o(t, i, a), s), c)),
    r(n(e, l), t)
    }
    , d = function(e, t, i, a, o, l, c) {
    return e = r(e, r(r(s(t, i, a), o), c)),
    r(n(e, l), t)
    }
    , f = function(e) {
    for (var t, n = e.length, r = n + 8, i = 16 * ((r - r % 64) / 64 + 1), a = Array(i - 1), o = 0, s = 0; s < n; )
    o = s % 4 * 8,
    a[t = (s - s % 4) / 4] = a[t] | e.charCodeAt(s) << o,
    s++;
    return t = (s - s % 4) / 4,
    o = s % 4 * 8,
    a[t] = a[t] | 128 << o,
    a[i - 2] = n << 3,
    a[i - 1] = n >>> 29,
    a
    }
    , p = function(e) {
    var t, n = "", r = "";
    for (t = 0; t <= 3; t++)
    n += (r = "0" + (e >>> 8 * t & 255).toString(16)).substr(r.length - 2, 2);
    return n
    },
    h = function(e) {
    e = e.replace(/\x0d\x0a/g, "\n");
    for (var t = "", n = 0; n < e.length; n++) {
    var r = e.charCodeAt(n);
    if (r < 128)
    t += String.fromCharCode(r);
    else if (r > 127 && r < 2048)
    t += String.fromCharCode(r >> 6 | 192),
    t += String.fromCharCode(63 & r | 128);
    else if (r >= 55296 && r <= 56319) {
    if (n + 1 < e.length) {
    var i = e.charCodeAt(n + 1);
    if (i >= 56320 && i <= 57343) {
    var a = 1024 * (r - 55296) + (i - 56320) + 65536;
    t += String.fromCharCode(240 | a >> 18 & 7),
    t += String.fromCharCode(128 | a >> 12 & 63),
    t += String.fromCharCode(128 | a >> 6 & 63),
    t += String.fromCharCode(128 | 63 & a),
    n++
    }
    }
    } else
    t += String.fromCharCode(r >> 12 | 224),
    t += String.fromCharCode(r >> 6 & 63 | 128),
    t += String.fromCharCode(63 & r | 128)
    }
    return t
    };
    f = function(e) {
    for (var t, n = e.length, r = n + 8, i = 16 * ((r - r % 64) / 64 + 1), a = Array(i - 1), o = 0, s = 0; s < n; )
    o = s % 4 * 8,
    a[t = (s - s % 4) / 4] = a[t] | e.charCodeAt(s) << o,
    s++;
    return t = (s - s % 4) / 4,
    o = s % 4 * 8,
    a[t] = a[t] | 128 << o,
    a[i - 2] = n << 3,
    a[i - 1] = n >>> 29,
    a
    }
    function md5_1(e) {
    var t, n, i, a, o, s, m, g, v, y = Array();
    for (e = e,
    y = f,
    s = 1732584193,
    m = 4023233417,
    g = 2562383102,
    v = 271733878,
    t = 0; t < y.length; t += 16)
    n = s,
    i = m,
    a = g,
    o = v,
    s = l(s, m, g, v, y[t + 0], 7, 3614090360),
    v = l(v, s, m, g, y[t + 1], 12, 3905402710),
    g = l(g, v, s, m, y[t + 2], 17, 606105819),
    m = l(m, g, v, s, y[t + 3], 22, 3250441966),
    s = l(s, m, g, v, y[t + 4], 7, 4118548399),
    v = l(v, s, m, g, y[t + 5], 12, 1200080426),
    g = l(g, v, s, m, y[t + 6], 17, 2821735955),
    m = l(m, g, v, s, y[t + 7], 22, 4249261313),
    s = l(s, m, g, v, y[t + 8], 7, 1770035416),
    v = l(v, s, m, g, y[t + 9], 12, 2336552879),
    g = l(g, v, s, m, y[t + 10], 17, 4294925233),
    m = l(m, g, v, s, y[t + 11], 22, 2304563134),
    s = l(s, m, g, v, y[t + 12], 7, 1804603682),
    v = l(v, s, m, g, y[t + 13], 12, 4254626195),
    g = l(g, v, s, m, y[t + 14], 17, 2792965006),
    m = l(m, g, v, s, y[t + 15], 22, 1236535329),
    s = c(s, m, g, v, y[t + 1], 5, 4129170786),
    v = c(v, s, m, g, y[t + 6], 9, 3225465664),
    g = c(g, v, s, m, y[t + 11], 14, 643717713),
    m = c(m, g, v, s, y[t + 0], 20, 3921069994),
    s = c(s, m, g, v, y[t + 5], 5, 3593408605),
    v = c(v, s, m, g, y[t + 10], 9, 38016083),
    g = c(g, v, s, m, y[t + 15], 14, 3634488961),
    m = c(m, g, v, s, y[t + 4], 20, 3889429448),
    s = c(s, m, g, v, y[t + 9], 5, 568446438),
    v = c(v, s, m, g, y[t + 14], 9, 3275163606),
    g = c(g, v, s, m, y[t + 3], 14, 4107603335),
    m = c(m, g, v, s, y[t + 8], 20, 1163531501),
    s = c(s, m, g, v, y[t + 13], 5, 2850285829),
    v = c(v, s, m, g, y[t + 2], 9, 4243563512),
    g = c(g, v, s, m, y[t + 7], 14, 1735328473),
    m = c(m, g, v, s, y[t + 12], 20, 2368359562),
    s = u(s, m, g, v, y[t + 5], 4, 4294588738),
    v = u(v, s, m, g, y[t + 8], 11, 2272392833),
    g = u(g, v, s, m, y[t + 11], 16, 1839030562),
    m = u(m, g, v, s, y[t + 14], 23, 4259657740),
    s = u(s, m, g, v, y[t + 1], 4, 2763975236),
    v = u(v, s, m, g, y[t + 4], 11, 1272893353),
    g = u(g, v, s, m, y[t + 7], 16, 4139469664),
    m = u(m, g, v, s, y[t + 10], 23, 3200236656),
    s = u(s, m, g, v, y[t + 13], 4, 681279174),
    v = u(v, s, m, g, y[t + 0], 11, 3936430074),
    g = u(g, v, s, m, y[t + 3], 16, 3572445317),
    m = u(m, g, v, s, y[t + 6], 23, 76029189),
    s = u(s, m, g, v, y[t + 9], 4, 3654602809),
    v = u(v, s, m, g, y[t + 12], 11, 3873151461),
    g = u(g, v, s, m, y[t + 15], 16, 530742520),
    m = u(m, g, v, s, y[t + 2], 23, 3299628645),
    s = d(s, m, g, v, y[t + 0], 6, 4096336452),
    v = d(v, s, m, g, y[t + 7], 10, 1126891415),
    g = d(g, v, s, m, y[t + 14], 15, 2878612391),
    m = d(m, g, v, s, y[t + 5], 21, 4237533241),
    s = d(s, m, g, v, y[t + 12], 6, 1700485571),
    v = d(v, s, m, g, y[t + 3], 10, 2399980690),
    g = d(g, v, s, m, y[t + 10], 15, 4293915773),
    m = d(m, g, v, s, y[t + 1], 21, 2240044497),
    s = d(s, m, g, v, y[t + 8], 6, 1873313359),
    v = d(v, s, m, g, y[t + 15], 10, 4264355552),
    g = d(g, v, s, m, y[t + 6], 15, 2734768916),
    m = d(m, g, v, s, y[t + 13], 21, 1309151649),
    s = d(s, m, g, v, y[t + 4], 6, 4149444226),
    v = d(v, s, m, g, y[t + 11], 10, 3174756917),
    g = d(g, v, s, m, y[t + 2], 15, 718787259),
    m = d(m, g, v, s, y[t + 9], 21, 3951481745),
    s = r(s, n),
    m = r(m, i),
    g = r(g, a),
    v = r(v, o);
    return (p(s) + p(m) + p(g) + p(v)).toLowerCase()
    }

     

    第四个参数:sign: n.md5(“fanyideskweb” + e + i + “]BjuETDhU)zqSxf-=B#7m”),相当于python中的sign=n.md5(“fanyideskweb” + e + i + “]BjuETDhU)zqSxf-=B#7m”), salt=i,e是你输入需要翻译的词语,即可写成sign=n.md5(“fanyideskweb” +str(e) + str(salt) + “]BjuETDhU)zqSxf-=B#7m”),继续选择直接扣代码。用python3调用js的库之execjs 来扣,鼠标放到 sign: n.md5(“fanyideskweb” + e + i + “]BjuETDhU)zqSxf-=B#7m”)中的n.md5()上,将会出现f md5(e)函数,点击进入,来到8196行, md5: function(e){  },把第8196行到8278行扣下来,竟然和刚才的扣bv的方法相同,仅仅是参数不同而已,bv的是 n.md5(navigator.appVersion)中的navigator.appVersion参数,现在的asin的是sign=n.md5(“fanyideskweb” +str(e) + str(salt) + “]BjuETDhU)zqSxf-=B#7m”)中的”fanyideskweb” +str(e) + str(salt) + “]BjuETDhU)zqSxf-=B#7m”参数,再应用execjs解析出sign.

    注意:自调函数调用写法:  

    #var aa=function(e){ }和function  aa(e){ }写法都可以,一样的

    import execjs
    f = open(r”text.js”,encoding=’utf-8′).read()
    ctx1 = execjs.compile(f)
    bv=ctx1.call(‘md5_2’,ua.random)
    print(bv)

    扣出来的js代码:主体为function md5_2(e) { }  ,应用execjs解析,缺什么参数找什么参数,即可

    var n = function(e, t) {
    return e << t | e >>> 32 - t
    }
    , r = function(e, t) {
    var n, r, i, a, o;
    return i = 2147483648 & e,
    a = 2147483648 & t,
    n = 1073741824 & e,
    r = 1073741824 & t,
    o = (1073741823 & e) + (1073741823 & t),
    n & r ? 2147483648 ^ o ^ i ^ a : n | r ? 1073741824 & o ? 3221225472 ^ o ^ i ^ a : 1073741824 ^ o ^ i ^ a : o ^ i ^ a
    }
    , i = function(e, t, n) {
    return e & t | ~e & n
    }
    , a = function(e, t, n) {
    return e & n | t & ~n
    }
    , o = function(e, t, n) {
    return e ^ t ^ n
    }
    , s = function(e, t, n) {
    return t ^ (e | ~n)
    }
    , l = function(e, t, a, o, s, l, c) {
    return e = r(e, r(r(i(t, a, o), s), c)),
    r(n(e, l), t)
    }
    , c = function(e, t, i, o, s, l, c) {
    return e = r(e, r(r(a(t, i, o), s), c)),
    r(n(e, l), t)
    }
    , u = function(e, t, i, a, s, l, c) {
    return e = r(e, r(r(o(t, i, a), s), c)),
    r(n(e, l), t)
    }
    , d = function(e, t, i, a, o, l, c) {
    return e = r(e, r(r(s(t, i, a), o), c)),
    r(n(e, l), t)
    }
    , f = function(e) {
    for (var t, n = e.length, r = n + 8, i = 16 * ((r - r % 64) / 64 + 1), a = Array(i - 1), o = 0, s = 0; s < n; )
    o = s % 4 * 8,
    a[t = (s - s % 4) / 4] = a[t] | e.charCodeAt(s) << o,
    s++;
    return t = (s - s % 4) / 4,
    o = s % 4 * 8,
    a[t] = a[t] | 128 << o,
    a[i - 2] = n << 3,
    a[i - 1] = n >>> 29,
    a
    }
    , p = function(e) {
    var t, n = "", r = "";
    for (t = 0; t <= 3; t++)
    n += (r = "0" + (e >>> 8 * t & 255).toString(16)).substr(r.length - 2, 2);
    return n
    },
    h = function(e) {
    e = e.replace(/\x0d\x0a/g, "\n");
    for (var t = "", n = 0; n < e.length; n++) {
    var r = e.charCodeAt(n);
    if (r < 128)
    t += String.fromCharCode(r);
    else if (r > 127 && r < 2048)
    t += String.fromCharCode(r >> 6 | 192),
    t += String.fromCharCode(63 & r | 128);
    else if (r >= 55296 && r <= 56319) {
    if (n + 1 < e.length) {
    var i = e.charCodeAt(n + 1);
    if (i >= 56320 && i <= 57343) {
    var a = 1024 * (r - 55296) + (i - 56320) + 65536;
    t += String.fromCharCode(240 | a >> 18 & 7),
    t += String.fromCharCode(128 | a >> 12 & 63),
    t += String.fromCharCode(128 | a >> 6 & 63),
    t += String.fromCharCode(128 | 63 & a),
    n++
    }
    }
    } else
    t += String.fromCharCode(r >> 12 | 224),
    t += String.fromCharCode(r >> 6 & 63 | 128),
    t += String.fromCharCode(63 & r | 128)
    }
    return t
    };
    f = function(e) {
    for (var t, n = e.length, r = n + 8, i = 16 * ((r - r % 64) / 64 + 1), a = Array(i - 1), o = 0, s = 0; s < n; )
    o = s % 4 * 8,
    a[t = (s - s % 4) / 4] = a[t] | e.charCodeAt(s) << o,
    s++;
    return t = (s - s % 4) / 4,
    o = s % 4 * 8,
    a[t] = a[t] | 128 << o,
    a[i - 2] = n << 3,
    a[i - 1] = n >>> 29,
    a
    }

    function md5_2(e) {
    var t, n, i, a, o, s, m, g, v, y = Array();
    for (e = e,
    y = f(e),
    s = 1732584193,
    m = 4023233417,
    g = 2562383102,
    v = 271733878,
    t = 0; t < y.length; t += 16)
    n = s,
    i = m,
    a = g,
    o = v,
    s = l(s, m, g, v, y[t + 0], 7, 3614090360),
    v = l(v, s, m, g, y[t + 1], 12, 3905402710),
    g = l(g, v, s, m, y[t + 2], 17, 606105819),
    m = l(m, g, v, s, y[t + 3], 22, 3250441966),
    s = l(s, m, g, v, y[t + 4], 7, 4118548399),
    v = l(v, s, m, g, y[t + 5], 12, 1200080426),
    g = l(g, v, s, m, y[t + 6], 17, 2821735955),
    m = l(m, g, v, s, y[t + 7], 22, 4249261313),
    s = l(s, m, g, v, y[t + 8], 7, 1770035416),
    v = l(v, s, m, g, y[t + 9], 12, 2336552879),
    g = l(g, v, s, m, y[t + 10], 17, 4294925233),
    m = l(m, g, v, s, y[t + 11], 22, 2304563134),
    s = l(s, m, g, v, y[t + 12], 7, 1804603682),
    v = l(v, s, m, g, y[t + 13], 12, 4254626195),
    g = l(g, v, s, m, y[t + 14], 17, 2792965006),
    m = l(m, g, v, s, y[t + 15], 22, 1236535329),
    s = c(s, m, g, v, y[t + 1], 5, 4129170786),
    v = c(v, s, m, g, y[t + 6], 9, 3225465664),
    g = c(g, v, s, m, y[t + 11], 14, 643717713),
    m = c(m, g, v, s, y[t + 0], 20, 3921069994),
    s = c(s, m, g, v, y[t + 5], 5, 3593408605),
    v = c(v, s, m, g, y[t + 10], 9, 38016083),
    g = c(g, v, s, m, y[t + 15], 14, 3634488961),
    m = c(m, g, v, s, y[t + 4], 20, 3889429448),
    s = c(s, m, g, v, y[t + 9], 5, 568446438),
    v = c(v, s, m, g, y[t + 14], 9, 3275163606),
    g = c(g, v, s, m, y[t + 3], 14, 4107603335),
    m = c(m, g, v, s, y[t + 8], 20, 1163531501),
    s = c(s, m, g, v, y[t + 13], 5, 2850285829),
    v = c(v, s, m, g, y[t + 2], 9, 4243563512),
    g = c(g, v, s, m, y[t + 7], 14, 1735328473),
    m = c(m, g, v, s, y[t + 12], 20, 2368359562),
    s = u(s, m, g, v, y[t + 5], 4, 4294588738),
    v = u(v, s, m, g, y[t + 8], 11, 2272392833),
    g = u(g, v, s, m, y[t + 11], 16, 1839030562),
    m = u(m, g, v, s, y[t + 14], 23, 4259657740),
    s = u(s, m, g, v, y[t + 1], 4, 2763975236),
    v = u(v, s, m, g, y[t + 4], 11, 1272893353),
    g = u(g, v, s, m, y[t + 7], 16, 4139469664),
    m = u(m, g, v, s, y[t + 10], 23, 3200236656),
    s = u(s, m, g, v, y[t + 13], 4, 681279174),
    v = u(v, s, m, g, y[t + 0], 11, 3936430074),
    g = u(g, v, s, m, y[t + 3], 16, 3572445317),
    m = u(m, g, v, s, y[t + 6], 23, 76029189),
    s = u(s, m, g, v, y[t + 9], 4, 3654602809),
    v = u(v, s, m, g, y[t + 12], 11, 3873151461),
    g = u(g, v, s, m, y[t + 15], 16, 530742520),
    m = u(m, g, v, s, y[t + 2], 23, 3299628645),
    s = d(s, m, g, v, y[t + 0], 6, 4096336452),
    v = d(v, s, m, g, y[t + 7], 10, 1126891415),
    g = d(g, v, s, m, y[t + 14], 15, 2878612391),
    m = d(m, g, v, s, y[t + 5], 21, 4237533241),
    s = d(s, m, g, v, y[t + 12], 6, 1700485571),
    v = d(v, s, m, g, y[t + 3], 10, 2399980690),
    g = d(g, v, s, m, y[t + 10], 15, 4293915773),
    m = d(m, g, v, s, y[t + 1], 21, 2240044497),
    s = d(s, m, g, v, y[t + 8], 6, 1873313359),
    v = d(v, s, m, g, y[t + 15], 10, 4264355552),
    g = d(g, v, s, m, y[t + 6], 15, 2734768916),
    m = d(m, g, v, s, y[t + 13], 21, 1309151649),
    s = d(s, m, g, v, y[t + 4], 6, 4149444226),
    v = d(v, s, m, g, y[t + 11], 10, 3174756917),
    g = d(g, v, s, m, y[t + 2], 15, 718787259),
    m = d(m, g, v, s, y[t + 9], 21, 3951481745),
    s = r(s, n),
    m = r(m, i),
    g = r(g, a),
    v = r(v, o);
    return (p(s) + p(m) + p(g) + p(v)).toLowerCase()
    }

     

    9.大功告成,四个可变参数全部搞定,即可搞定&

    附上完整代码  python部分:

    import time
    import execjs
    import random
    import requests
    import json
    from fake_useragent import UserAgent
    # var aa=function(e) function aa(e)

    class YouDaoTanslate():
    def __init__(self):
    #类方法调用
    self.js_par()
    def js_par(self):
    translation_data = input(“请输入要翻译的词或者句子:”)
    # 13位时间戳获取方法:单位:毫秒
    ua = UserAgent()
    print(ua.random)
    t1 = time.time()
    ts = int(t1 * 1000)
    print(ts)
    salt = str(int(ts)) + str(random.randint(0, 10))
    print(salt)

    f = open(r”text.js”, encoding=‘utf-8’).read()
    ctx1 = execjs.compile(f)
    bv = ctx1.call(‘md5_1’, ua.random)
    print(bv)

    ctx2 = execjs.compile(f)
    sign_data = ‘fanyideskweb’ + translation_data + salt + ‘mmbP%A-r6U3Nw(n]BjuEU’
    sign = ctx2.call(‘md5_2’, sign_data)
    print(sign)

    self.get_translateData(translation_data,ua,ts,salt,bv,sign)
    def get_translateData(self,translation_data,ua,ts,salt,bv,sign):
    url = ‘http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule’
    headers = {
    ‘Host’: ‘fanyi.youdao.com’,
    ‘Origin’: ‘http://fanyi.youdao.com’,
    ‘Referer’: ‘http://fanyi.youdao.com/’,
    ‘User-Agent’: ua.random,
    ‘X-Requested-With’: ‘XMLHttpRequest’,
    ‘Cookie’: ‘OUTFOX_SEARCH_USER_ID_NCOO=892433278.3204294; OUTFOX_SEARCH_USER_ID=”-1911793285@10.108.160.19″; _ntes_nnid=d2bb7793f13c9a83907e33d40665337a,1597158692753; JSESSIONID=aaamUZK4O580YaKjmjIpx; ___rl__test__cookies=1597227802599’
    }
    data = {
    ‘i’: translation_data,
    ‘from’: ‘AUTO’,
    ‘to’: ‘AUTO’,
    ‘smartresult’: ‘dict’,
    ‘client’: ‘fanyideskweb’,
    ‘salt’: str(salt),
    ‘sign’: str(sign),
    ‘ts’: str(ts),
    ‘bv’: str(bv),
    ‘doctype’: ‘json’,
    ‘version’: ‘2.1’,
    ‘keyfrom’: ‘fanyi.web’,
    ‘action’: ‘FY_BY_CLICKBUTTION’
    }

    response = requests.post(url=url, data=data, headers=headers)

    response = requests.post(url=url, data=data, headers=headers)
    translate_results = json.loads(response.text)
    # 找到翻译结果
    if ‘translateResult’ in translate_results:
    translate_results = translate_results[‘translateResult’][0][0][‘tgt’]
    print(“翻译的结果是:%s” % translate_results)

    else:
    print(translate_results)

    self.js_par()

    YouDaoTanslate()

     

    js部分:


    var n = function(e, t) {
    return e << t | e >>> 32 - t
    }
    , r = function(e, t) {
    var n, r, i, a, o;
    return i = 2147483648 & e,
    a = 2147483648 & t,
    n = 1073741824 & e,
    r = 1073741824 & t,
    o = (1073741823 & e) + (1073741823 & t),
    n & r ? 2147483648 ^ o ^ i ^ a : n | r ? 1073741824 & o ? 3221225472 ^ o ^ i ^ a : 1073741824 ^ o ^ i ^ a : o ^ i ^ a
    }
    , i = function(e, t, n) {
    return e & t | ~e & n
    }
    , a = function(e, t, n) {
    return e & n | t & ~n
    }
    , o = function(e, t, n) {
    return e ^ t ^ n
    }
    , s = function(e, t, n) {
    return t ^ (e | ~n)
    }
    , l = function(e, t, a, o, s, l, c) {
    return e = r(e, r(r(i(t, a, o), s), c)),
    r(n(e, l), t)
    }
    , c = function(e, t, i, o, s, l, c) {
    return e = r(e, r(r(a(t, i, o), s), c)),
    r(n(e, l), t)
    }
    , u = function(e, t, i, a, s, l, c) {
    return e = r(e, r(r(o(t, i, a), s), c)),
    r(n(e, l), t)
    }
    , d = function(e, t, i, a, o, l, c) {
    return e = r(e, r(r(s(t, i, a), o), c)),
    r(n(e, l), t)
    }
    , f = function(e) {
    for (var t, n = e.length, r = n + 8, i = 16 * ((r - r % 64) / 64 + 1), a = Array(i - 1), o = 0, s = 0; s < n; )
    o = s % 4 * 8,
    a[t = (s - s % 4) / 4] = a[t] | e.charCodeAt(s) << o,
    s++;
    return t = (s - s % 4) / 4,
    o = s % 4 * 8,
    a[t] = a[t] | 128 << o,
    a[i - 2] = n << 3,
    a[i - 1] = n >>> 29,
    a
    }
    , p = function(e) {
    var t, n = "", r = "";
    for (t = 0; t <= 3; t++)
    n += (r = "0" + (e >>> 8 * t & 255).toString(16)).substr(r.length - 2, 2);
    return n
    },
    h = function(e) {
    e = e.replace(/\x0d\x0a/g, "\n");
    for (var t = "", n = 0; n < e.length; n++) {
    var r = e.charCodeAt(n);
    if (r < 128)
    t += String.fromCharCode(r);
    else if (r > 127 && r < 2048)
    t += String.fromCharCode(r >> 6 | 192),
    t += String.fromCharCode(63 & r | 128);
    else if (r >= 55296 && r <= 56319) {
    if (n + 1 < e.length) {
    var i = e.charCodeAt(n + 1);
    if (i >= 56320 && i <= 57343) {
    var a = 1024 * (r - 55296) + (i - 56320) + 65536;
    t += String.fromCharCode(240 | a >> 18 & 7),
    t += String.fromCharCode(128 | a >> 12 & 63),
    t += String.fromCharCode(128 | a >> 6 & 63),
    t += String.fromCharCode(128 | 63 & a),
    n++
    }
    }
    } else
    t += String.fromCharCode(r >> 12 | 224),
    t += String.fromCharCode(r >> 6 & 63 | 128),
    t += String.fromCharCode(63 & r | 128)
    }
    return t
    };
    f = function(e) {
    for (var t, n = e.length, r = n + 8, i = 16 * ((r - r % 64) / 64 + 1), a = Array(i - 1), o = 0, s = 0; s < n; )
    o = s % 4 * 8,
    a[t = (s - s % 4) / 4] = a[t] | e.charCodeAt(s) << o,
    s++;
    return t = (s - s % 4) / 4,
    o = s % 4 * 8,
    a[t] = a[t] | 128 << o,
    a[i - 2] = n << 3,
    a[i - 1] = n >>> 29,
    a
    }
    function md5_1(e) {
    var t, n, i, a, o, s, m, g, v, y = Array();
    for (e = e,
    y = f,
    s = 1732584193,
    m = 4023233417,
    g = 2562383102,
    v = 271733878,
    t = 0; t < y.length; t += 16)
    n = s,
    i = m,
    a = g,
    o = v,
    s = l(s, m, g, v, y[t + 0], 7, 3614090360),
    v = l(v, s, m, g, y[t + 1], 12, 3905402710),
    g = l(g, v, s, m, y[t + 2], 17, 606105819),
    m = l(m, g, v, s, y[t + 3], 22, 3250441966),
    s = l(s, m, g, v, y[t + 4], 7, 4118548399),
    v = l(v, s, m, g, y[t + 5], 12, 1200080426),
    g = l(g, v, s, m, y[t + 6], 17, 2821735955),
    m = l(m, g, v, s, y[t + 7], 22, 4249261313),
    s = l(s, m, g, v, y[t + 8], 7, 1770035416),
    v = l(v, s, m, g, y[t + 9], 12, 2336552879),
    g = l(g, v, s, m, y[t + 10], 17, 4294925233),
    m = l(m, g, v, s, y[t + 11], 22, 2304563134),
    s = l(s, m, g, v, y[t + 12], 7, 1804603682),
    v = l(v, s, m, g, y[t + 13], 12, 4254626195),
    g = l(g, v, s, m, y[t + 14], 17, 2792965006),
    m = l(m, g, v, s, y[t + 15], 22, 1236535329),
    s = c(s, m, g, v, y[t + 1], 5, 4129170786),
    v = c(v, s, m, g, y[t + 6], 9, 3225465664),
    g = c(g, v, s, m, y[t + 11], 14, 643717713),
    m = c(m, g, v, s, y[t + 0], 20, 3921069994),
    s = c(s, m, g, v, y[t + 5], 5, 3593408605),
    v = c(v, s, m, g, y[t + 10], 9, 38016083),
    g = c(g, v, s, m, y[t + 15], 14, 3634488961),
    m = c(m, g, v, s, y[t + 4], 20, 3889429448),
    s = c(s, m, g, v, y[t + 9], 5, 568446438),
    v = c(v, s, m, g, y[t + 14], 9, 3275163606),
    g = c(g, v, s, m, y[t + 3], 14, 4107603335),
    m = c(m, g, v, s, y[t + 8], 20, 1163531501),
    s = c(s, m, g, v, y[t + 13], 5, 2850285829),
    v = c(v, s, m, g, y[t + 2], 9, 4243563512),
    g = c(g, v, s, m, y[t + 7], 14, 1735328473),
    m = c(m, g, v, s, y[t + 12], 20, 2368359562),
    s = u(s, m, g, v, y[t + 5], 4, 4294588738),
    v = u(v, s, m, g, y[t + 8], 11, 2272392833),
    g = u(g, v, s, m, y[t + 11], 16, 1839030562),
    m = u(m, g, v, s, y[t + 14], 23, 4259657740),
    s = u(s, m, g, v, y[t + 1], 4, 2763975236),
    v = u(v, s, m, g, y[t + 4], 11, 1272893353),
    g = u(g, v, s, m, y[t + 7], 16, 4139469664),
    m = u(m, g, v, s, y[t + 10], 23, 3200236656),
    s = u(s, m, g, v, y[t + 13], 4, 681279174),
    v = u(v, s, m, g, y[t + 0], 11, 3936430074),
    g = u(g, v, s, m, y[t + 3], 16, 3572445317),
    m = u(m, g, v, s, y[t + 6], 23, 76029189),
    s = u(s, m, g, v, y[t + 9], 4, 3654602809),
    v = u(v, s, m, g, y[t + 12], 11, 3873151461),
    g = u(g, v, s, m, y[t + 15], 16, 530742520),
    m = u(m, g, v, s, y[t + 2], 23, 3299628645),
    s = d(s, m, g, v, y[t + 0], 6, 4096336452),
    v = d(v, s, m, g, y[t + 7], 10, 1126891415),
    g = d(g, v, s, m, y[t + 14], 15, 2878612391),
    m = d(m, g, v, s, y[t + 5], 21, 4237533241),
    s = d(s, m, g, v, y[t + 12], 6, 1700485571),
    v = d(v, s, m, g, y[t + 3], 10, 2399980690),
    g = d(g, v, s, m, y[t + 10], 15, 4293915773),
    m = d(m, g, v, s, y[t + 1], 21, 2240044497),
    s = d(s, m, g, v, y[t + 8], 6, 1873313359),
    v = d(v, s, m, g, y[t + 15], 10, 4264355552),
    g = d(g, v, s, m, y[t + 6], 15, 2734768916),
    m = d(m, g, v, s, y[t + 13], 21, 1309151649),
    s = d(s, m, g, v, y[t + 4], 6, 4149444226),
    v = d(v, s, m, g, y[t + 11], 10, 3174756917),
    g = d(g, v, s, m, y[t + 2], 15, 718787259),
    m = d(m, g, v, s, y[t + 9], 21, 3951481745),
    s = r(s, n),
    m = r(m, i),
    g = r(g, a),
    v = r(v, o);
    return (p(s) + p(m) + p(g) + p(v)).toLowerCase()
    }

    var n = function(e, t) {
    return e << t | e >>> 32 – t
    }
    , r = function(e, t) {
    var n, r, i, a, o;
    return i = 2147483648 & e,
    a = 2147483648 & t,
    n = 1073741824 & e,
    r = 1073741824 & t,
    o = (1073741823 & e) + (1073741823 & t),
    n & r ? 2147483648 ^ o ^ i ^ a : n | r ? 1073741824 & o ? 3221225472 ^ o ^ i ^ a : 1073741824 ^ o ^ i ^ a : o ^ i ^ a
    }
    , i = function(e, t, n) {
    return e & t | ~e & n
    }
    , a = function(e, t, n) {
    return e & n | t & ~n
    }
    , o = function(e, t, n) {
    return e ^ t ^ n
    }
    , s = function(e, t, n) {
    return t ^ (e | ~n)
    }
    , l = function(e, t, a, o, s, l, c) {
    return e = r(e, r(r(i(t, a, o), s), c)),
    r(n(e, l), t)
    }
    , c = function(e, t, i, o, s, l, c) {
    return e = r(e, r(r(a(t, i, o), s), c)),
    r(n(e, l), t)
    }
    , u = function(e, t, i, a, s, l, c) {
    return e = r(e, r(r(o(t, i, a), s), c)),
    r(n(e, l), t)
    }
    , d = function(e, t, i, a, o, l, c) {
    return e = r(e, r(r(s(t, i, a), o), c)),
    r(n(e, l), t)
    }
    , f = function(e) {
    for (var t, n = e.length, r = n + 8, i = 16 * ((r – r % 64) / 64 + 1), a = Array(i – 1), o = 0, s = 0; s < n; )
    o = s % 4 * 8,
    a[t = (s – s % 4) / 4] = a[t] | e.charCodeAt(s) << o,
    s++;
    return t = (s – s % 4) / 4,
    o = s % 4 * 8,
    a[t] = a[t] | 128 << o,
    a[i – 2] = n << 3,
    a[i – 1] = n >>> 29,
    a
    }
    , p = function(e) {
    var t, n = “”, r = “”;
    for (t = 0; t <= 3; t++)
    n += (r = “0” + (e >>> 8 * t & 255).toString(16)).substr(r.length – 2, 2);
    return n
    },
    h = function(e) {
    e = e.replace(/\x0d\x0a/g, “\n”);
    for (var t = “”, n = 0; n < e.length; n++) {
    var r = e.charCodeAt(n);
    if (r < 128)
    t += String.fromCharCode(r);
    else if (r > 127 && r < 2048)
    t += String.fromCharCode(r >> 6 | 192),
    t += String.fromCharCode(63 & r | 128);
    else if (r >= 55296 && r <= 56319) {
    if (n + 1 < e.length) {
    var i = e.charCodeAt(n + 1);
    if (i >= 56320 && i <= 57343) {
    var a = 1024 * (r – 55296) + (i – 56320) + 65536;
    t += String.fromCharCode(240 | a >> 18 & 7),
    t += String.fromCharCode(128 | a >> 12 & 63),
    t += String.fromCharCode(128 | a >> 6 & 63),
    t += String.fromCharCode(128 | 63 & a),
    n++
    }
    }
    } else
    t += String.fromCharCode(r >> 12 | 224),
    t += String.fromCharCode(r >> 6 & 63 | 128),
    t += String.fromCharCode(63 & r | 128)
    }
    return t
    };
    f = function(e) {
    for (var t, n = e.length, r = n + 8, i = 16 * ((r – r % 64) / 64 + 1), a = Array(i – 1), o = 0, s = 0; s < n; )
    o = s % 4 * 8,
    a[t = (s – s % 4) / 4] = a[t] | e.charCodeAt(s) << o,
    s++;
    return t = (s – s % 4) / 4,
    o = s % 4 * 8,
    a[t] = a[t] | 128 << o,
    a[i – 2] = n << 3,
    a[i – 1] = n >>> 29,
    a
    }

    function md5_2(e) {
    var t, n, i, a, o, s, m, g, v, y = Array();
    for (e = e,
    y = f(e),
    s = 1732584193,
    m = 4023233417,
    g = 2562383102,
    v = 271733878,
    t = 0; t < y.length; t += 16)
    n = s,
    i = m,
    a = g,
    o = v,
    s = l(s, m, g, v, y[t + 0], 7, 3614090360),
    v = l(v, s, m, g, y[t + 1], 12, 3905402710),
    g = l(g, v, s, m, y[t + 2], 17, 606105819),
    m = l(m, g, v, s, y[t + 3], 22, 3250441966),
    s = l(s, m, g, v, y[t + 4], 7, 4118548399),
    v = l(v, s, m, g, y[t + 5], 12, 1200080426),
    g = l(g, v, s, m, y[t + 6], 17, 2821735955),
    m = l(m, g, v, s, y[t + 7], 22, 4249261313),
    s = l(s, m, g, v, y[t + 8], 7, 1770035416),
    v = l(v, s, m, g, y[t + 9], 12, 2336552879),
    g = l(g, v, s, m, y[t + 10], 17, 4294925233),
    m = l(m, g, v, s, y[t + 11], 22, 2304563134),
    s = l(s, m, g, v, y[t + 12], 7, 1804603682),
    v = l(v, s, m, g, y[t + 13], 12, 4254626195),
    g = l(g, v, s, m, y[t + 14], 17, 2792965006),
    m = l(m, g, v, s, y[t + 15], 22, 1236535329),
    s = c(s, m, g, v, y[t + 1], 5, 4129170786),
    v = c(v, s, m, g, y[t + 6], 9, 3225465664),
    g = c(g, v, s, m, y[t + 11], 14, 643717713),
    m = c(m, g, v, s, y[t + 0], 20, 3921069994),
    s = c(s, m, g, v, y[t + 5], 5, 3593408605),
    v = c(v, s, m, g, y[t + 10], 9, 38016083),
    g = c(g, v, s, m, y[t + 15], 14, 3634488961),
    m = c(m, g, v, s, y[t + 4], 20, 3889429448),
    s = c(s, m, g, v, y[t + 9], 5, 568446438),
    v = c(v, s, m, g, y[t + 14], 9, 3275163606),
    g = c(g, v, s, m, y[t + 3], 14, 4107603335),
    m = c(m, g, v, s, y[t + 8], 20, 1163531501),
    s = c(s, m, g, v, y[t + 13], 5, 2850285829),
    v = c(v, s, m, g, y[t + 2], 9, 4243563512),
    g = c(g, v, s, m, y[t + 7], 14, 1735328473),
    m = c(m, g, v, s, y[t + 12], 20, 2368359562),
    s = u(s, m, g, v, y[t + 5], 4, 4294588738),
    v = u(v, s, m, g, y[t + 8], 11, 2272392833),
    g = u(g, v, s, m, y[t + 11], 16, 1839030562),
    m = u(m, g, v, s, y[t + 14], 23, 4259657740),
    s = u(s, m, g, v, y[t + 1], 4, 2763975236),
    v = u(v, s, m, g, y[t + 4], 11, 1272893353),
    g = u(g, v, s, m, y[t + 7], 16, 4139469664),
    m = u(m, g, v, s, y[t + 10], 23, 3200236656),
    s = u(s, m, g, v, y[t + 13], 4, 681279174),
    v = u(v, s, m, g, y[t + 0], 11, 3936430074),
    g = u(g, v, s, m, y[t + 3], 16, 3572445317),
    m = u(m, g, v, s, y[t + 6], 23, 76029189),
    s = u(s, m, g, v, y[t + 9], 4, 3654602809),
    v = u(v, s, m, g, y[t + 12], 11, 3873151461),
    g = u(g, v, s, m, y[t + 15], 16, 530742520),
    m = u(m, g, v, s, y[t + 2], 23, 3299628645),
    s = d(s, m, g, v, y[t + 0], 6, 4096336452),
    v = d(v, s, m, g, y[t + 7], 10, 1126891415),
    g = d(g, v, s, m, y[t + 14], 15, 2878612391),
    m = d(m, g, v, s, y[t + 5], 21, 4237533241),
    s = d(s, m, g, v, y[t + 12], 6, 1700485571),
    v = d(v, s, m, g, y[t + 3], 10, 2399980690),
    g = d(g, v, s, m, y[t + 10], 15, 4293915773),
    m = d(m, g, v, s, y[t + 1], 21, 2240044497),
    s = d(s, m, g, v, y[t + 8], 6, 1873313359),
    v = d(v, s, m, g, y[t + 15], 10, 4264355552),
    g = d(g, v, s, m, y[t + 6], 15, 2734768916),
    m = d(m, g, v, s, y[t + 13], 21, 1309151649),
    s = d(s, m, g, v, y[t + 4], 6, 4149444226),
    v = d(v, s, m, g, y[t + 11], 10, 3174756917),
    g = d(g, v, s, m, y[t + 2], 15, 718787259),
    m = d(m, g, v, s, y[t + 9], 21, 3951481745),
    s = r(s, n),
    m = r(m, i),
    g = r(g, a),
    v = r(v, o);
    return (p(s) + p(m) + p(g) + p(v)).toLowerCase()
    }

    展开全文
  • matlab有些代码不运行Matlab实用程序 该存储库包含许多不同的实用程序...外部-此文件夹包含我经常使用的来自外部代码。 其中一些可以在MATLAB FileExchange上找到。 io-此文件夹包含用于输入/输出(读/写)的代码
  • 2020-08-24

    2020-08-24 14:48:44
    有哪位大神知道从哪里可以找到车辆轨迹预测的源代码或者带源代码的论文,,,急求急求!!!

    有哪位大神知道从哪里可以找到车辆轨迹预测的源代码或者带源代码的论文,,,急求急求!!!

    展开全文
  • Qt Creator的配置

    2021-03-31 14:49:22
    但是,如果您安装独立的Qt Creator程序包,从源代码构建Qt Creator或安装多个Qt版本,则可能需要通过添加路径和创建工具包来告诉Qt Creator在哪里可以找到Qt版本和编译器。使用它们。 为了使Qt Cre

    配置Qt Creator

    如果将Qt Creator作为Qt安装的一部分进行安装,则应该能够使用默认设置和配置选项直接使用它。

    但是,如果您安装独立的Qt Creator程序包,从源代码构建Qt Creator或安装多个Qt版本,则可能需要通过添加路径和创建工具包来告诉Qt Creator在哪里可以找到Qt版本和编译器。使用它们。

    为了使Qt Creator的行为更像您喜欢的代码编辑器或IDE,您可以更改键盘快捷键,配色方案,通用突出显示,代码段和版本控制系统的设置。另外,您可以通过管理插件来启用和禁用Qt Creator功能。

    以下各节概述了您拥有的选项,并为您提供了详细的信息,以帮助您指定所有必需的设置,并为使用Qt Creator带来更好的体验。

    检查构建和运行设置

    Qt Creator是一个集成开发环境(IDE),可用于开发Qt应用程序。虽然可以使用Qt Installer安装Qt Creator,但独立的Qt Creator安装程序永远不会安装Qt或任何Qt工具,例如qmake。要使用Qt Creator进行Qt开发,还需要安装Qt版本和编译器。如果以后更新编译器版本,则可以将其注册到Qt Creator中。

    Qt安装程序会尝试自动检测已安装的编译器和Qt版本。如果成功,相关工具包将在Qt Creator中自动变为可用。如果不是,则必须自己添加工具包,以告诉Qt Creator所有内容。

    要添加套件,请选择工具>选项>套件>添加。
    每个套件都包含一组定义一个环境的值,例如设备,编译器和Qt版本。如果您知道已安装Qt版本,但未在“工具” >“选项” >“工具包” >“ Qt版本”中列出,请选择“与Qt链接”。

    如果“自动检测”下仍未列出Qt版本,请选择“添加”以手动添加它。
    另外,还要检查您的编译器是否在“工具” >“选项” >“工具包” >“编译器”中列出。
    您可以将设备连接到开发PC,以从Qt Creator运行,调试和分析设备上的应用程序。您可以通过USB将设备连接到开发PC。此外,您可以通过WLAN连接基于Linux的设备。您还必须配置Qt Creator与开发PC之间的连接,并在套件中指定设备。

    要添加设备,请选择工具>选项>设备>设备>添加。

    更改键盘快捷键

    您可以将Qt Creator与您最喜欢的键盘快捷键一起使用。

    要查看和编辑Qt Creator中定义的所有键盘快捷键,请选择工具>选项>环境>键盘。

    更改配色方案

    主题使您可以自定义Qt Creator UI的外观:小部件,颜色和图标。

    要切换主题,请选择“工具” >“选项” >“环境”,然后在“主题”字段中选择一个主题。

    您可以将Qt Creator文本和代码编辑器与您喜欢的配色方案一起使用,该配色方案定义如何突出显示代码元素以及使用哪种背景色。您可以选择一种预定义的配色方案或创建自定义的配色方案。颜色方案适用于突出显示C ++文件,QML文件和通用文件。

    要更改配色方案,请选择工具>选项>文本编辑器>字体和颜色。
    通用突出显示由KSyntaxHighlighting提供,它是Kate语法定义的语法突出显示引擎。Qt Creator随附了大多数常用的语法文件,您可以下载其他文件。

    要下载和使用突出显示定义文件,请选择“工具” >“选项” >“文本编辑器” >“通用突出显示工具”。

    添加您自己的代码段

    在编写代码时,Qt Creator会建议属性,ID和代码段以完成代码。它为当前光标所在的语句提供了上下文相关建议的列表。您可以在代码段编辑器中添加,修改和删除代码段。

    要打开代码段编辑器,请选择“工具” >“选项” >“文本编辑器” >“代码段”。

    配置版本控制系统

    Qt Creator支持多种版本控制系统。在大多数情况下,无需以任何特殊方式配置版本控制即可使其与Qt Creator一起使用。一旦在开发PC上正确设置,它就可以正常工作。

    但是,有些配置选项可用,您可以在“工具” >“选项” >“版本控制” >“通用”中进行设置。

    管理插件

    Qt Creator附带了一组插件,其中一些默认情况下处于禁用状态。如果需要,可以启用禁用的插件,并禁用不需要的插件。

    您还可以安装从Qt Marketplace或其他来源(例如GitHub)下载的其他插件。

    启用和禁用插件

    新的Qt Creator插件通常作为实验性插件引入,让您在完全支持它们之前对其进行尝试。实验性插件默认情况下处于禁用状态,您必须启用它们才能使它们在重新启动Qt Creator之后可见。默认情况下,该插件依赖的所有插件也已启用。

    您还可以禁用不使用的插件,以简化Qt Creator。默认情况下,所有依赖于该插件的插件也会被禁用。

    要启用和禁用插件,请选择“帮助” >“关于插件”。
    在这里插入图片描述

    安装插件

    Qt Marketplace包含指向Qt Creator插件的链接,您可以免费下载或安装Qt Creator插件,也可以按发行商设置的价格进行安装。您可以在“欢迎”模式下的“市场”选项卡中浏览可用的插件。

    注意:您只能安装Qt Creator版本支持的插件。

    要安装插件:

    选择“帮助” >“关于插件” >“安装插件”。
    在“源”对话框中,输入包含插件的档案或库的路径。
    在这里插入图片描述
    在“安装位置”对话框中,选择“用户插件”以使该插件可用于所有兼容Qt Creator实例中的当前用户,或选择“ Qt Creator”安装以使该插件可用于特定Qt Creator实例的所有用户。
    在这里插入图片描述
    在“摘要”对话框中,选择“完成”以安装插件。
    在这里插入图片描述
    选择立即重新启动以重新启动Qt Creator并加载插件。

    展开全文
  • 该资料是《Oracle SQL高级编程》的源代码 对应的书籍资料见: Oracle SQL高级编程(资深Oracle专家力作,OakTable团队推荐) 基本信息 原书名: Pro Oracle SQL 原出版社: Apress 作者: (美)Karen Morton Kerry ...
  • 这些源代码可以从图灵网站本书网页免费注册下载。  本书是网络研究和开发人员公认的权威参考书,深入理解本书内容,方能设计出良好的unix软件。 作译者  W. Richard Stevens 国际知名的UNIX和网络专家,备受...
  • 禁食 该角色将安装fastd及其依赖项(必要时源安装),并且能够配置一个或多个实例。 要求 Ansible 1.2和基于Debian的操作系统(将来可能会更改) 角色变量 默认变量 ... 如果源构建,则在哪里找到源ta
  • 2009年开始,Android内核源代码不再是Android源代码的一部分,而是需要单独下载。2011年9月开始,Android...因此,首先需要找到哪里可以下载到Android内核源代码。 经过几天的尝试,发现MSM/QSD Android Enabl
  • Linux入门到精通

    2010-04-25 19:58:09
    E.5.3 Red Hat Linux是否包含源代码? E.6 安装 E.6.1 我有一个空的硬盘, 并想安装DOS或Windows 95和Linux. 最好的方法是什么? E.6.2 我没有CD-ROM, 也不能网上安装. 是否有其他方法? E.6.3 我想制作新的软盘, ...
  • E.5.3 Red Hat Linux是否包含源代码? E.6 安装 E.6.1 我有一个空的硬盘, 并想安装DOS或Windows 95和Linux. 最好的方法是什么? E.6.2 我没有CD-ROM, 也不能网上安装. 是否有其他方法? E.6.3 我想制作新的软盘, ...
  • 1.2在哪里可以找到FidoCadJ? 1.3如何运行FidoCadJ? 1.4我可以从哪里获得帮助? 源文件和FidoCadJ Git目录 2.1主目录 2.2重要课程 2.3开发人员工具 有关编译和运行FidoCadJ的说明 3.1构建自动化工具 3.2在...
  • 可以从我们的下载源代码和二进制文件。 或者,您可以从中央 Maven 存储库中提取它: < groupId>org.apache.commons < artifactId>commons-vfs2 < version>2.0 贡献 我们通过 github 接受 PR。 是贡献者...
  • 可以从我们的下载源代码和二进制文件。 或者,您可以从中央Maven存储库中提取它: < groupId>commons-validator < artifactId>commons-validator < version>1.7 贡献 我们通过GitHub接受拉取请求。 是贡献...
  • linux入门到精通.chm

    2010-05-17 09:11:20
    E.5.3 Red Hat Linux是否包含源代码? E.6 安装 E.6.1 我有一个空的硬盘, 并想安装DOS或Windows 95和Linux. 最好的方法是什么? E.6.2 我没有CD-ROM, 也不能网上安装. 是否有其他方法? E.6.3 我想制作新的软盘, ...
  • 可以从我们的下载源代码和二进制文件。 或者,您可以从中央Maven存储库中提取它: < groupId>org.apache.commons < artifactId>commons-dbcp2 < version>2.8.0 贡献 我们通过GitHub接受拉取请求。是贡献者...
  • 可以从我们的下载源代码和二进制文件。 或者,您可以从中央Maven存储库中提取它: < groupId>org.apache.commons < artifactId>commons-pool2 < version>2.9.0 贡献 我们通过GitHub接受拉取请求。 是贡献者...
  • 可以从我们的下载源代码和二进制文件。 或者,您可以从中央Maven存储库中提取它: < groupId>commons-cli < artifactId>commons-cli < version>1.4 贡献 我们通过GitHub接受拉取请求。 是贡献者交流的主要...
  • 《Linux入门到精通》

    热门讨论 2008-09-04 17:05:49
    E.5.3 Red Hat Linux是否包含源代码? E.6 安装 E.6.1 我有一个空的硬盘, 并想安装DOS或Windows 95和Linux. 最好的方法是什么? E.6.2 我没有CD-ROM, 也不能网上安装. 是否有其他方法? E.6.3 我想制作新的软盘, ...
  • 哪里可以找到正式版本? 最终用户可以SourceForge下载CivetWeb二进制文件/发行版 开发人员可以通过GitHub为CivetWeb做出贡献 由于CivetWeb必须与早期或更高版本一起使用(另请参见)。 故障票应在GitHub上归档 ...

空空如也

空空如也

1 2 3 4 5 ... 7
收藏数 138
精华内容 55
关键字:

从哪里可以找到源代码