抓取某安全公司升级包链接(python小白登天日记)

如果有大神路过,希望指出我描述种错误的部分,感激不尽。
他的工作是去别人公司给安全软件升级,比如如果客户公司版本号是1.1,最新版本号是10.0,他需要从1.2下载到10.0并且按顺序安装,这是他给我的链接:
http://update.nsfocus.com/update/listAurora/v/5
可以看到需要下载的东西确实挺多的,如果一个个点不是不能点完,但是这个正好可以用来练手,也挺简单的,不需要登录,

这一次我先上代码 版本2.7:


from bs4 import BeautifulSoup#解析网页的模块
import re#正则模块
import urllib#网络请求模块
url = "http://update.nsfocus.com/update/listAurora/v/5"
page = urllib.urlopen(url)#请求页面
html = page.read()#获取页面内容
soup = BeautifulSoup(html,'html.parser')#将页面变成bs的一个对象,用来后面的解析
test = soup.find_all(attrs={'href':re.compile("/update/downloads/id/")})#利用正则找到 含有href这个属性,且href中包含"/update/downloads/id/"这块字符串的所有标签。
for a in test:#遍历下载链接
Furl = downloadUrl + a['href']
print Furl
urllib.urlretrieve(Furl,"code.zip")#开始下载,但是这一块是错误的

先说BeautifulSoup,以下简称bs:

bs是用来解析接收到的网页的,解析约等于处理数据,咱们接受下来的网页有数不清的嵌套的标签,标签里有一堆乱七八糟的属性和值还有标签自己的content,我打印一下上面代码中的html大家一起鉴赏一下:




本来想将这个html所有代码都拿过来大家鉴赏一下但是复制了一下,实在太大了,而且都给我提示了:

抓取某安全公司升级包链接(python小白登天日记)_第1张图片
提示

上面放的代码只是极小极小一部分,这也是我们为什么要用bs模块来解析网页的原因,他会让我们解析这个网页的过程变得异常简单且流畅,下面说一下常用的方法:

soup = BeautifulSoup(html,'html.parser')

将html这个页面解析为一个bs的可操作对象。
BeautifulSoup()这个方法必填的两个参数,一个是html,也就是我们需要解析的网页,另一个是一个str,它代表的是什么呢?Beautiful Soup 4.4.0 文档查看官方文档,发现它有详细的解释:

解析器 使用方法 优势 劣势
Python标准库 BeautifulSoup(markup, "html.parser")

Python的内置标准库

执行速度适中

文档容错能力强

Python 2.7.3 or 3.2.2)前 的版本中文档容错能力差
Python标准库 BeautifulSoup(markup, "lxml")

速度快

文档容错能力强

需要安装C语言库
lxml XML 解析器

BeautifulSoup(markup, ["lxml-xml"])

BeautifulSoup(markup, "xml")

速度快

唯一支持XML的解析器

需要安装C语言库
html5lib BeautifulSoup(markup, "html5lib")

最好的容错性

以浏览器的方式解析文档

生成HTML5格式的文档

速度慢

不依赖外部扩展

上面的表格详细的写明白了这个字符串对应各种状况下应该填什么,优劣点都写的很清楚,我就不赘述了。

find_all方法简析:

test = soup.find_all(attrs={'href':re.compile("/update/downloads/id/")})
因为我要抓取当前页面的所有下载链接,所以我首先要找到含有这些链接的所有的网页标签,chrome打开链接,我用Mac的快捷键option+command+i 打开页面,然后shift+command+c 选中左边的显示内容,右边网页元素部分就会高亮对应的标签:

抓取某安全公司升级包链接(python小白登天日记)_第2张图片
审查网页元素

可以看到右边代码高亮的部分如下:
aurora-051701.dat
下一个下载链接所在的标签:
aurora-051700.dat

看了几个标签之后总结一下规律,发现href中都含有"/update/downloads/id"这个字符串,但是这个字符串并不是完整的href值,所以我们用re.compile("/update/downloads/id")来表示完整的值。
接着说回来find_all():
find_all(name,attrs,recursive,string,**kwargs)


name 参数

name参数可以查找所有名字为 name的tag,字符串对象会被自动忽略掉.简单的用法如下:
soup.find_all("title")# [The Dormouse's story]
重申: 搜索 name参数的值可以使任一类型的 过滤器 ,字符c,正则表达式,列表,方法或是 True.

keyword 参数

如果一个指定名字的参数不是搜索内置的参数名,搜索时会把该参数当作指定名字tag的属性来搜索,如果包含一个名字为 id的参数,BeautifulSoup会搜索每个tag的”id”属性.
soup.find_all(id='link2')# [
Lacie]

如果传入 href 参数,Beautiful Soup会搜索每个tag的”href”属性:
soup.find_all(href=re.compile("elsie"))# [Elsie]

搜索指定名字的属性时可以使用的参数值包括 字符串 , 正则表达式 , 列表, True .
下面的例子在文档树中查找所有包含 id 属性的tag,无论 id 的值是什么:

soup.find_all(id=True)
[//Elsie,
//Lacie,
//Tillie]

使用多个指定名字的参数可以同时过滤tag的多个属性:
soup.find_all(href=re.compile("elsie"), id='link1')
// [three]

有些tag属性在搜索不能使用,比如HTML5中的 data-* 属性:
data_soup = BeautifulSoup('

foo!
')data_soup.find_all(data-foo="value")
// SyntaxError: keyword can't be an expression

但是可以通过 find_all()方法的 attrs 参数定义一个字典参数来搜索包含特殊属性的tag:
data_soup.find_all(attrs={"data-foo": "value"})
// [

foo!
]

按CSS搜索

按照CSS类名搜索tag的功能非常实用,但标识CSS类名的关键字 class 在Python中是保留字,使用 class 做参数会导致语法错误.从BeautifulSoup的4.1.1版本开始,可以通过 class_ 参数搜索有指定CSS名的tag:
soup.find_all("a", class_="sister")
// [Elsie,
//Lacie,
//Tillie]

class_ 参数同样接受不同类型的 过滤器 ,字符串,正则表达式,方法或 True :
soup.find_all(class_=re.compile("itl"))
//[

The Dormouse's story

]def has_six_characters(css_class): return css_class is not None and len(css_class) == 6soup.find_all(class_=has_six_characters)
//[Elsie,
//Lacie,
//Tillie]

tag的 class 属性是 多值属性 .按照CSS类名搜索tag时,可以分别搜索tag中的每个CSS类名:
css_soup = BeautifulSoup('

')css_soup.find_all("p", class_="strikeout")
//[

]css_soup.find_all("p", class_="body")
//[

]

搜索 class 属性时也可以通过CSS值完全匹配:
css_soup.find_all("p", class_="body strikeout")# [

]

完全匹配 class 的值时,如果CSS类名的顺序与实际不符,将搜索不到结果:
soup.find_all("a", attrs={"class": "sister"})
//[Elsie,
//Lacie,
//Tillie]

string参数

通过 string 参数可以搜搜文档中的字符串内容.与 name 参数的可选值一样, string 参数接受 字符串 , 正则表达式 , 列表, True . 看例子:

soup.find_all(string="Elsie")
//[u'Elsie']soup.find_all(string=["Tillie", "Elsie", "Lacie"])
//[u'Elsie',u'Lacie',u'Tillie']
soup.find_all(string=re.compile("Dormouse"))
//[u"The Dormouse's story", u"The Dormouse's story"]
def is_the_only_string_within_a_tag(s):
""Return True if this string is the only child of its parent tag.""
return (s == s.parent.string)soup.find_all(string=is_the_only_string_within_a_tag)
//[u"The Dormouse's story", u"The Dormouse's story", u'Elsie', u'Lacie', u'Tillie', u'...']

虽然 string参数用于搜索字符串,还可以与其它参数混合使用来过滤tag.Beautiful Soup会找到 .string 方法与 string 参数值相符的tag.下面代码用来搜索内容里面包含“Elsie”的a标签:
soup.find_all("a", string="Elsie")# [Elsie]

limit参数

find_all()方法返回全部的搜索结构,如果文档树很大那么搜索会很慢.如果我们不需要全部结果,可以使用 limit 参数限制返回结果的数量.效果与SQL中的limit关键字类似,当搜索到的结果数量达到 limit 的限制时,就停止搜索返回结果.文档树中有3个tag符合搜索条件,但结果只返回了2个,因为我们限制了返回数量:
soup.find_all("a", limit=2)
//[Elsie,
//Lacie]

recursive参数

调用tag的 find_all() 方法时,Beautiful Soup会检索当前tag的所有子孙节点,如果只想搜索tag的直接子节点,可以使用参数 recursive=False.
一段简单的文档:
The Dormouse's story ...

是否使用 recursive参数的搜索结果:
soup.html.find_all("title")# [The Dormouse's story]soup.html.find_all("title", recursive=False)# []

这是文档片段
The Dormouse's story ...

标签在 <html> 标签下, 但并不是直接子节点, <head> 标签才是直接子节点. 在允许查询所有后代节点时 Beautiful Soup 能够查找到 <title> 标签. 但是使用了 recursive=False 参数之后,只能查找直接子节点,这样就查不到 <title> 标签了.<br> Beautiful Soup 提供了多种DOM树搜索方法. 这些方法都使用了类似的参数定义. 比如这些方法: find_all(): name, attrs, text, limit. 但是只有 find_all() 和 find() 支持 recursive 参数.<br> </blockquote></a></p> <p>最后我用for遍历了一下所有标签,但是我们要的是标签里面href的值,所以要这么写:<br> <code>a['href']</code><br> 这样,我们就能打印出所有的链接,但是下载的部分那天是在太晚了,所以就没去看那个下载方法怎么使用,直接在网上找了一段代码,果然出错误了,咱们下次再说</p> </article> </div> </div> </div> <!--PC和WAP自适应版--> <div id="SOHUCS" sid="1283473411871358976"></div> <script type="text/javascript" src="/views/front/js/chanyan.js"></script> <!-- 文章页-底部 动态广告位 --> <div class="youdao-fixed-ad" id="detail_ad_bottom"></div> </div> <div class="col-md-3"> <div class="row" id="ad"> <!-- 文章页-右侧1 动态广告位 --> <div id="right-1" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_1"> </div> </div> <!-- 文章页-右侧2 动态广告位 --> <div id="right-2" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_2"></div> </div> <!-- 文章页-右侧3 动态广告位 --> <div id="right-3" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_3"></div> </div> </div> </div> </div> </div> </div> <div class="container"> <h4 class="pt20 mb15 mt0 border-top">你可能感兴趣的:(抓取某安全公司升级包链接(python小白登天日记))</h4> <div id="paradigm-article-related"> <div class="recommend-post mb30"> <ul class="widget-links"> <li><a href="/article/1947823242093850624.htm" title="WD5032是一款集成多个USB专用充电协议的高效、单片同步降压DC/DC转换器,32V,3.1A车充芯片,支持快速充电协议" target="_blank">WD5032是一款集成多个USB专用充电协议的高效、单片同步降压DC/DC转换器,32V,3.1A车充芯片,支持快速充电协议</a> <span class="text-muted">F13729801557</span> <a class="tag" taget="_blank" href="/search/DC-DC%E9%99%8D%E5%8E%8B/1.htm">DC-DC降压</a><a class="tag" taget="_blank" href="/search/%E5%8D%95%E7%89%87%E6%9C%BA/1.htm">单片机</a><a class="tag" taget="_blank" href="/search/%E5%B5%8C%E5%85%A5%E5%BC%8F%E7%A1%AC%E4%BB%B6/1.htm">嵌入式硬件</a><a class="tag" taget="_blank" href="/search/51%E5%8D%95%E7%89%87%E6%9C%BA/1.htm">51单片机</a><a class="tag" taget="_blank" href="/search/stm32/1.htm">stm32</a> <div>WD5032是一款性能出色的电源管理芯片,以下是根据你提供的信息整理的详细介绍:基本特性:宽输入电压范围:能在8.5V至32V的输入电压范围内稳定工作。大电流输出:可提供高达3.1A的连续负载电流,满足多种设备的供电需求。高效率转换:转换效率高达93%,可有效减少能量损耗,提高电源利用率。控制模式:支持CC/CV(恒流/恒压)模式控制,确保充电过程的稳定性和安全性。占空比:具备100%最大占空比,</div> </li> <li><a href="/article/1947823206102528000.htm" title="北面部落 | 探秘长安城之【秦始皇陵兵马俑博物馆】4.16" target="_blank">北面部落 | 探秘长安城之【秦始皇陵兵马俑博物馆】4.16</a> <span class="text-muted">北面部落橘子</span> <div>北面部落为深圳北面教育科技有限公司注册青少年户外教育品牌。“秦俑虽无名,但千人千面,他们以血肉之躯安天下,护万里河山。岂曰无名吗,山河即名。”——《国家宝藏》这群被称为世界第八大奇迹的地下军团,被黑暗吞噬了2200多年,直到1974年的“一束光”,将它们照亮,惊艳世人。我们与孩子们一起走近两千多年前恢宏的大秦王朝,感受历史的厚重与美丽,体会秦朝的壮阔气势。01参观兵马俑兵马俑给人的感觉是很壮观,呈</div> </li> <li><a href="/article/1947823079052865536.htm" title="小陶日记:把写作当做肌肉练习" target="_blank">小陶日记:把写作当做肌肉练习</a> <span class="text-muted">感恩学习相信小陶</span> <div>0105:19,今天起来感觉有点困难了,是因为那种新鲜的感觉过去了吧。也因为还没有养成这个时间点起来的习惯吧。也可以说是因为昨晚睡得太晚了,也没有睡好造成的。总之,感觉不是那么好。今天头条的写作比赛,本来想好要写《救鱼》这个的,后来看到,不收小说,这个小说的构思也就被放置了。要是可以的话,待会可以把这个内容写出来。也可以写头条能够投稿的内容。02目前在做的几件事情,我觉得都是能够产生非常好的复利效</div> </li> <li><a href="/article/1947822610528137216.htm" title="从API到Agent:万字洞悉LangChain工程化设计" target="_blank">从API到Agent:万字洞悉LangChain工程化设计</a> <span class="text-muted">bpluo42657</span> <a class="tag" taget="_blank" href="/search/langchain/1.htm">langchain</a> <div>——构建下一代AI应用的核心范式迁移一、传统API范式的局限性:为什么需要Agent?接口式AI的痛点python#传统NLPAPI调用示例response=openai.Completion.create(model="text-davinci-003",prompt="请翻译:Helloworld",max_tokens=50)单次请求/响应模式缺乏状态管理与上下文延续硬编码逻辑难以应对复杂场</div> </li> <li><a href="/article/1947822311210020864.htm" title="琢磨琢磨,如何突破瓶颈,找到解决方案?" target="_blank">琢磨琢磨,如何突破瓶颈,找到解决方案?</a> <span class="text-muted">Viviancjq</span> <div>今天公司迎来了一个辅导企业股改的一个老师,他们公司培训了大约2万个企业了。是个有思想有深度的大咖。他提了4个很好的问题,这也引发了我的思考,最近2个月,我都在思考自己去留问题,因为我觉得我到了一个职业瓶颈,不知道再朝哪个方向去发展,急需一个见识广泛,经验丰富的人生导师,引导我前行。他提的四个问题是:1)为什么公司这么多年都维持在2000多万的业绩,没有很大增长?2)如何破现在的瓶颈?3)公司的核心</div> </li> <li><a href="/article/1947822105441660928.htm" title="互联网医院运营数据采集" target="_blank">互联网医院运营数据采集</a> <span class="text-muted">争实科技</span> <a class="tag" taget="_blank" href="/search/%E4%BA%92%E8%81%94%E7%BD%91%E5%8C%BB%E9%99%A2/1.htm">互联网医院</a><a class="tag" taget="_blank" href="/search/%E5%8C%BB%E7%96%97%E4%BF%A1%E6%81%AF%E5%8C%96/1.htm">医疗信息化</a> <div>互联网医院运营数据采集是支撑业务优化、服务监管和决策分析的核心环节,需整合多源异构数据并确保其安全性与有效性。以下从采集内容、技术方法、挑战及解决方案等方面系统阐述:一、核心数据采集内容1.患者与业务数据基础信息:患者人口学特征、病史、过敏史等。服务记录:挂号量、问诊类型(图文/视频)、诊断量、处方量、复诊率、药品配送量。交互指标:平均就诊时长、会话响应时间、服务完成率。2.资源与效率数据医生资源</div> </li> <li><a href="/article/1947822052987695104.htm" title="生死四分钟4 minute泰剧免费在线观看《死生时刻》4分钟中文字幕高清HD全集4 Minutes完整无删减版观看-4分钟在哪看多少集百度云/夸克迅雷网盘资源" target="_blank">生死四分钟4 minute泰剧免费在线观看《死生时刻》4分钟中文字幕高清HD全集4 Minutes完整无删减版观看-4分钟在哪看多少集百度云/夸克迅雷网盘资源</a> <span class="text-muted">优惠攻略官</span> <div>《生死四分钟》(4Minutes)是一部泰国电视剧,讲述了一个关于时间、命运和选择的故事。主角Great是一名工商管理学院的大学生,同时也是一位富有企业主的儿子。他意外获得了一种超自然的力量,可以预见四分钟后的未来,这种能力使他能够改变许多事件的结果。Great在某天遇见了外科住院医生Tyme,两人逐渐增进关系并开始发展。死生时刻链接:https://pan.quark.cn/s/d4c20b70</div> </li> <li><a href="/article/1947821925808009216.htm" title="我为什么允许学生带零食" target="_blank">我为什么允许学生带零食</a> <span class="text-muted">梦在燃烧_06ae</span> <div>高年级的学生一般不会带零食到教室,偶尔有捎带的,也是自己偷偷摸摸吃,哪敢与老师分享?但是在我所教的二年级学生的书包里,零食几乎是另一类“文具”。在这里我要声明一下,学校是不允许学生带零食进校园的,但是我在带他们一年级时,考虑学生到校早早饭可能吃不好,半晌就会感到饥饿这个问题。于是我就允许我班的孩子带食品到学校,在大课间的时候补充一下能量。不过,我对孩子们进行了如下的食品安全教育:1.不吃垃圾食品和</div> </li> <li><a href="/article/1947819772402003968.htm" title="韩笑|Day20 感恩日记" target="_blank">韩笑|Day20 感恩日记</a> <span class="text-muted">Annie韩笑</span> <div>感恩自己,调整情绪的能力在增强感恩自己持续不断的努力坚持,每天都在学习,在输出感恩洒水车,给城市带来清洁,洒水车走过的地方还可以看到彩虹感恩得到APP香帅的分享,让我对当前形势有了新的认识感恩宝宝的绘本,用故事的方式跟小朋友传递正面思维感恩阳光,很温暖可以消毒感恩大地,支撑着许多楼房,养育着花草树木,提供我们生存的空间感恩天空,保护着地球,提供小鸟生存空间,给人们很多想象感恩我的身体,健康强壮,我</div> </li> <li><a href="/article/1947819641392918528.htm" title="红果短剧推广怎么赚钱?从拉新授权到剪辑保姆级操作赚钱教学指南" target="_blank">红果短剧推广怎么赚钱?从拉新授权到剪辑保姆级操作赚钱教学指南</a> <span class="text-muted">星火执行官</span> <div>红果短剧推广怎么赚钱?从拉新授权到剪辑保姆级操作赚钱教学攻略!在当今短视频的火爆热浪中,红果短剧拉新作为一项热门的CPA副业项目,凭借其强大的背景、诱人的佣金以及透明的数据机制,吸引了众多创业者的目光。本文将为您详细解析红果短剧拉新的操作流程与策略,助您轻松上手,实现收益最大化。一、红果短剧拉新项目的独特魅力坚实后盾:红果短剧背靠字节公司,其雄厚的实力为项目的长期稳定运营提供了坚实保障。高额佣金:</div> </li> <li><a href="/article/1947817949511348224.htm" title="【项目实战】在 Python 中,可以通过 `subprocess` 模块调用系统的压缩程序(如 7-Zip 或系统自带的zip命令)来实现文件或文件夹的压缩。" target="_blank">【项目实战】在 Python 中,可以通过 `subprocess` 模块调用系统的压缩程序(如 7-Zip 或系统自带的zip命令)来实现文件或文件夹的压缩。</a> <span class="text-muted">本本本添哥</span> <a class="tag" taget="_blank" href="/search/011/1.htm">011</a><a class="tag" taget="_blank" href="/search/-/1.htm">-</a><a class="tag" taget="_blank" href="/search/Python/1.htm">Python</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/7-zip/1.htm">7-zip</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a> <div>在Python中,可以通过subprocess模块调用系统的压缩程序(如7-Zip或系统自带的zip命令)来实现文件或文件夹的压缩。通过subprocess调用系统压缩工具(如7-Zip)是最灵活的方式,支持多线程、密码保护和多种压缩格式。需注意路径配置和参数的正确性,并通过异常处理提升代码健壮性。对于轻量需求,可优先考虑zipfile或py7zr等库。以下是详细的实现方法和注意事项:1.使用7-</div> </li> <li><a href="/article/1947817823166328832.htm" title="《Python 微服务架构实践指南:框架与工具的深度解析》" target="_blank">《Python 微服务架构实践指南:框架与工具的深度解析》</a> <span class="text-muted">清水白石008</span> <a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/Python%E9%A2%98%E5%BA%93/1.htm">Python题库</a><a class="tag" taget="_blank" href="/search/%E6%9E%B6%E6%9E%84/1.htm">架构</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E5%BE%AE%E6%9C%8D%E5%8A%A1/1.htm">微服务</a> <div>《Python微服务架构实践指南:框架与工具的深度解析》开篇引入背景介绍:在现代应用开发中,微服务架构因其高扩展性、灵活性和模块化优势而备受关注。从电商平台到数据处理,微服务架构逐渐取代传统单体架构,成为开发者首选。而Python凭借其简洁优雅的语法和丰富的生态系统,为实现微服务架构提供了坚实的基础。为什么写这篇文章:作为一名资深开发者和教育者,我深切感受到许多开发者在微服务设计中的困惑。因此,本</div> </li> <li><a href="/article/1947816589202092032.htm" title="微信投票如何快速涨票数,网上投票怎样才能弄到更多的票巨体5个细节!" target="_blank">微信投票如何快速涨票数,网上投票怎样才能弄到更多的票巨体5个细节!</a> <span class="text-muted">桃朵APP</span> <div>微信投票如何快速涨票数,网上投票怎样才能弄到更多的票巨体5个细节!专业团队投票微信205956123(长按微信号可复制粘贴)纯人工快速涨票利用社交媒体传播:在微信朋友圈、QQ空间、微博等社交平台上发布投票信息和呼吁亲友支持,并通过加入相关微信群组或论坛积极参与讨论,以扩大投票的影响力和覆盖范围。1个人号码库:收集亲友的手机号码并添加至通讯录,直接通过微信发送投票链接,这样可以迅速扩大票数。有奖互动</div> </li> <li><a href="/article/1947813923394744320.htm" title="日记里012" target="_blank">日记里012</a> <span class="text-muted">一条梦</span> <div>坚持的力量到底有多强大?我暂且还不知道,但我希望为此实验一下。每天尽量比别人早醒一点,醒了之后习惯性的打开去完成每天超过一百字的日更,剩余的时间用于写书评或者看书上或者背背英语单词也可以。在每周三次的健身训练中把主项中重量最重的一组拍摄下来,留到周末统一的时间进行剪辑,希望可以坚持把这个计划走完并最后做个合集和总结,在这其中,我不仅希望自己三大项的成绩能够提升,更希望自己的剪辑水平可以提高。坚持做</div> </li> <li><a href="/article/1947813918076366848.htm" title="使用uv工具高效管理Python版本安装指南" target="_blank">使用uv工具高效管理Python版本安装指南</a> <span class="text-muted">庞翰烽</span> <div>使用uv工具高效管理Python版本安装指南前言在现代Python开发中,多版本Python环境管理是每个开发者都会遇到的挑战。传统方式需要手动下载安装不同版本的Python,配置环境变量,过程繁琐且容易出错。uv工具提供了一套优雅的解决方案,让Python版本管理变得简单高效。uv工具简介uv是一个现代化的Python工具链管理器,它不仅能够管理Python包依赖,还能智能地管理Python解释</div> </li> <li><a href="/article/1947813665893838848.htm" title="用python实现无限弹窗-五一劳动节快乐" target="_blank">用python实现无限弹窗-五一劳动节快乐</a> <span class="text-muted">数据知道</span> <a class="tag" taget="_blank" href="/search/python3%E6%A1%88%E4%BE%8B%E5%92%8C%E6%80%BB%E7%BB%93/1.htm">python3案例和总结</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a> <div>更多内容请见:python3案例和总结-专栏介绍和目录文章目录1.使用`tkinter`实现无限弹窗1.1实现代码1.2代码说明2.使用`pyautogui`实现无限弹窗2.1安装`pyautogui`2.2实现代码2.3代码说明3.使用`ctypes`实现无限弹窗3.1实现代码3.2代码说明4.注意事项5.总结使用tkinter库使用pyautogui库在Python中实现无限弹窗可以通过tki</div> </li> <li><a href="/article/1947813286573568000.htm" title="审美差?这事暴富也解决不了" target="_blank">审美差?这事暴富也解决不了</a> <span class="text-muted">木子桃心说</span> <div>日记星球的各位星宝宝,大家好,我是日记星球440号星宝宝木子|KITTY,家居领域电商运营,整理咨询师。这是我的第60篇原创日记,日积月累给我带来了巨大的力量,我相信坚持创造奇迹。曾经有人提过这样一个问题:“我之前一直以为好东西谁不知道买,只是没钱买罢了。可是后来却越来越发现,事实不是这样的。身边同事朋友的衣服鞋子并不比自己的贵,甚至还便宜,但是搭配得体,风度翩翩;一个小区,同一个装修公司,同一个</div> </li> <li><a href="/article/1947812406654726144.htm" title="鸿蒙应用App Linking优化:深度链接性能" target="_blank">鸿蒙应用App Linking优化:深度链接性能</a> <span class="text-muted">操作系统内核探秘</span> <a class="tag" taget="_blank" href="/search/%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F%E5%86%85%E6%A0%B8%E6%8F%AD%E7%A7%98/1.htm">操作系统内核揭秘</a><a class="tag" taget="_blank" href="/search/harmonyos/1.htm">harmonyos</a><a class="tag" taget="_blank" href="/search/%E5%8D%8E%E4%B8%BA/1.htm">华为</a><a class="tag" taget="_blank" href="/search/ai/1.htm">ai</a> <div>鸿蒙应用AppLinking优化:深度链接性能关键词:鸿蒙系统、AppLinking、深度链接、性能优化、路由匹配、参数解析、冷启动优化摘要:本文深入探讨鸿蒙系统下AppLinking深度链接的性能优化策略。从核心概念解析出发,详细阐述深度链接在鸿蒙架构中的实现原理,包括Ability路由机制、链接解析算法和参数传递模型。通过数学模型分析路由匹配复杂度,结合Python算法示例演示链接解析过程。基</div> </li> <li><a href="/article/1947812027426729984.htm" title="Eureka 为大数据领域服务治理带来的新思路" target="_blank">Eureka 为大数据领域服务治理带来的新思路</a> <span class="text-muted">大数据洞察</span> <a class="tag" taget="_blank" href="/search/%E5%A4%A7%E6%95%B0%E6%8D%AEAI%E5%BA%94%E7%94%A8/1.htm">大数据AI应用</a><a class="tag" taget="_blank" href="/search/%E5%A4%A7%E6%95%B0%E6%8D%AE%E4%B8%8EAI%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">大数据与AI人工智能</a><a class="tag" taget="_blank" href="/search/eureka/1.htm">eureka</a><a class="tag" taget="_blank" href="/search/%E5%A4%A7%E6%95%B0%E6%8D%AE/1.htm">大数据</a><a class="tag" taget="_blank" href="/search/%E4%BA%91%E5%8E%9F%E7%94%9F/1.htm">云原生</a><a class="tag" taget="_blank" href="/search/ai/1.htm">ai</a> <div>Eureka为大数据领域服务治理带来的新思路关键词:Eureka,大数据,服务治理,分布式系统,微服务摘要:本文深入探讨了Eureka为大数据领域服务治理带来的新思路。首先介绍了大数据领域服务治理的背景和现状,阐述了Eureka的核心概念与工作原理。接着详细分析了Eureka核心算法原理,结合Python代码进行说明,并给出相关数学模型和公式。通过项目实战案例,展示了Eureka在大数据服务治理中</div> </li> <li><a href="/article/1947812026805972992.htm" title="Python爬虫技术:高效采集开放数据的5种方法" target="_blank">Python爬虫技术:高效采集开放数据的5种方法</a> <span class="text-muted">大数据洞察</span> <a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E7%88%AC%E8%99%AB/1.htm">爬虫</a><a class="tag" taget="_blank" href="/search/wpf/1.htm">wpf</a><a class="tag" taget="_blank" href="/search/ai/1.htm">ai</a> <div>Python爬虫技术:高效采集开放数据的5种方法关键词:Python爬虫、开放数据采集、请求库、异步爬虫、分布式爬虫、动态网页解析、API直连摘要:本文围绕“如何用Python高效采集开放数据”展开,系统讲解5种主流爬虫方法(基础请求库、异步请求、动态网页渲染、分布式爬虫、API直连)的原理、适用场景与实战技巧。通过生活类比、代码示例和真实案例,帮助读者快速掌握不同场景下的爬虫策略,同时强调数据合</div> </li> <li><a href="/article/1947810234332409856.htm" title="淘宝优惠券去哪里领?5大领取方法" target="_blank">淘宝优惠券去哪里领?5大领取方法</a> <span class="text-muted">好项目高省</span> <div>大家好,我是万方,从事导购返利行业8年了。期间见证了无数平台崛起及各种套路,以及后来更多平台的倒闭和跑路。对于这个话题,今天我从一个内行的角度跟大家分享下,避免大家吃亏上当和走弯路。返利平台大概有这么几种类型:其一是社交电商导购类型,代表有:氧惠,高省,花生日记,蜜源,悦拜,美逛,高佣联盟,粉象生活,好省等;这种类型的平台从2017年出来后,几乎每年都有一些新平台出来。也是市面上目前最主流,用户群</div> </li> <li><a href="/article/1947809002062671872.htm" title="力扣-300.最长递增子序列" target="_blank">力扣-300.最长递增子序列</a> <span class="text-muted">এ᭄画画的北北</span> <a class="tag" taget="_blank" href="/search/java%E4%BA%8C%E5%88%B7%E5%8A%9B%E6%89%A3hot100/1.htm">java二刷力扣hot100</a><a class="tag" taget="_blank" href="/search/leetcode/1.htm">leetcode</a><a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/1.htm">算法</a> <div>题目链接300.最长递增子序列classSolution{publicintlengthOfLIS(int[]nums){int[]dp=newint[nums.length];intres=1;Arrays.fill(dp,1);for(inti=0;inums[j]){dp[i]=Math.max(dp[i],dp[j]+1);}res=Math.max(res,dp[i]);}}return</div> </li> <li><a href="/article/1947808576676360192.htm" title="区块链与数字经济:互联网创业者的未来之路,构建新的商业模式" target="_blank">区块链与数字经济:互联网创业者的未来之路,构建新的商业模式</a> <span class="text-muted">口碑信息传播者</span> <div>在互联网的浪潮下,区块链技术作为一种新型的分布式数据存储技术,正在逐渐改变着我们的商业模式。它以其独特的去中心化、安全性高、透明度高等特点,为数字经济的发展提供了新的契机。对于互联网创业者来说,理解区块链与数字经济的关系,把握这一技术趋势,无疑是开辟未来之路的关键。探索未来,触碰无限可能!国内区块链元宇宙正引领一场前所未有的科技革命,现在正是您加入这场盛宴的最佳时机!在这里,您将亲身体验到一个全新</div> </li> <li><a href="/article/1947807488682291200.htm" title="在本地127.0.0.1上跨实例访问远程数据库" target="_blank">在本地127.0.0.1上跨实例访问远程数据库</a> <span class="text-muted">和麻</span> <a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a> <div>1.确保可以和远程目标库连接通畅2.确保开启了sqlserver的TCP/IP3.创建LInkedserver-------先删除掉已存在的Remote203IFEXISTS(SELECT1FROMsys.serversWHEREname='Remote203')BEGINEXECsp_dropserver'Remote203','droplogins';ENDGO------------创建链接</div> </li> <li><a href="/article/1947807306636914688.htm" title="她们与我一起的日子" target="_blank">她们与我一起的日子</a> <span class="text-muted">63abc4c0289b</span> <div>不知道怎么,在我心理我自己记得那个时候我常常在想为啥我自己在那个时候我天天出去跑步或者拿着伞在下雨天的时候。把我的工作服穿着天冷我记得。把自己的东西放在那个时候自己的柜子里面。我知道,其实,我不仅为了把自己回复成刚刚来公司上班的样子其实。那个时候,我自己特注意的不是不注意我记得。那个时候,与现在一样出去锻炼身体因为,我知道,我还要天天拿着条数与簸箕,或者还有拖把把他与她让我天天扫得地面或者拖得。其</div> </li> <li><a href="/article/1947805025841508352.htm" title="太萌了!萌力星球治愈处于低谷的你" target="_blank">太萌了!萌力星球治愈处于低谷的你</a> <span class="text-muted">菜菜子_face</span> <div>人生的低谷千千万,无论事业、生活和恋爱,总会让你一不小心就掉入万丈深渊。但无论怎样的低谷,再苦生活还是会继续,这时只需给生活加一点甜,让自己感觉被幸福包围着,就会变得特别的美好。《萌力星球系列》相信很多人都会喜欢这一套绘本,因为:1、表情包网红2、蠢萌的代表3、治愈系,这三个特点就足够吸引到一大批粉丝。《萌力星球系列:乖巧宝宝日记我是自愿来上班的》下载量超5.2亿次,发送量超305亿次的国民表情包</div> </li> <li><a href="/article/1947803458442686464.htm" title="LeetCode 633.平方数之和(python题解)" target="_blank">LeetCode 633.平方数之和(python题解)</a> <span class="text-muted">wendong97</span> <a class="tag" taget="_blank" href="/search/LeetCode%E4%BB%8E%E9%9B%B6%E8%B5%B7%E6%AD%A5/1.htm">LeetCode从零起步</a><a class="tag" taget="_blank" href="/search/%23/1.htm">#</a><a class="tag" taget="_blank" href="/search/%E5%8F%8C%E6%8C%87%E9%92%88/1.htm">双指针</a><a class="tag" taget="_blank" href="/search/leetcode/1.htm">leetcode</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/1.htm">算法</a> <div>LeetCode633.平方数之和(python题解)题目示例分析题解用到的基础知识计算平方和平方根取整参考题目给定一个非负整数c,你要判断是否存在两个整数a和b,使得a2+b2=c示例输入:5输出:True解释:1*1+2*2=5分析本题与上一题LeetCode167.两数之和II非常相似,把两数之和变成了平方数之和,利用上一题答案的思路,同样设置两个一左一右的指针,很容易就可以解答出来。这里要</div> </li> <li><a href="/article/1947802954505449472.htm" title="量子计算时代的突破:微算法科技开发出多目标进化算法推动量子电路创新" target="_blank">量子计算时代的突破:微算法科技开发出多目标进化算法推动量子电路创新</a> <span class="text-muted"></span> <div>量子计算正处于技术发展的前沿,但其实际应用与潜力的实现仍然面临巨大挑战。量子计算机的基本单位是量子比特(qubit),与经典计算机的比特不同,量子比特可以同时处于多个状态(叠加),并通过纠缠现象相互作用。理论上,量子计算机能够以比经典计算机快得多的速度解决某些问题,特别是在处理涉及大量变量和复杂数据集的问题时。尽管量子硬件的进步令人瞩目,尤其是近期一些公司推出了量子处理器,但量子算法(即量子计算机</div> </li> <li><a href="/article/1947802448710135808.htm" title="学习小结记录" target="_blank">学习小结记录</a> <span class="text-muted">歪歪驴</span> <a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0/1.htm">学习</a><a class="tag" taget="_blank" href="/search/%E7%BD%91%E7%BB%9C/1.htm">网络</a> <div>一、TLS(TransportLayerSecurity)握手是建立安全通信通道的关键过程,确保客户端与服务器之间的通信加密和身份验证。以下是TLS1.2和TLS1.3的握手流程详解及对比:TLS1.2握手流程目标:协商加密套件、交换密钥、验证身份步骤:1.ClientHello-客户端发送支持的TLS版本、加密套件列表(如`AES256-GCM-SHA384`)、随机数(ClientRandom</div> </li> <li><a href="/article/1947801944227639296.htm" title="数据标注管理工具:AI燃料工厂的精益引擎" target="_blank">数据标注管理工具:AI燃料工厂的精益引擎</a> <span class="text-muted">花海如潮淹</span> <a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a><a class="tag" taget="_blank" href="/search/%E7%BB%8F%E9%AA%8C%E5%88%86%E4%BA%AB/1.htm">经验分享</a><a class="tag" taget="_blank" href="/search/%E7%AC%94%E8%AE%B0/1.htm">笔记</a> <div>标注团队的三重灾难链1.质量波动的死亡螺旋某自动驾驶公司因漏标3%的障碍物边缘,导致感知模型误判引发事故(IEEE2024案例)。质检员发现标注员A的错误率超行业标准5倍,但传统抽检仅覆盖8%数据量(ScaleAI白皮书)。2.任务调度的纳什困境某医疗影像标注项目,肝脏分割任务积压2周,而简单分类任务空闲率达37%(Labelbox调度报告)。标注员平均28%时间浪费在任务切换(Appen生产力研</div> </li> <li><a href="/article/11.htm" title="VMware Workstation 11 或者 VMware Player 7安装MAC OS X 10.10 Yosemite" target="_blank">VMware Workstation 11 或者 VMware Player 7安装MAC OS X 10.10 Yosemite</a> <span class="text-muted">iwindyforest</span> <a class="tag" taget="_blank" href="/search/vmware/1.htm">vmware</a><a class="tag" taget="_blank" href="/search/mac+os/1.htm">mac os</a><a class="tag" taget="_blank" href="/search/10.10/1.htm">10.10</a><a class="tag" taget="_blank" href="/search/workstation/1.htm">workstation</a><a class="tag" taget="_blank" href="/search/player/1.htm">player</a> <div>最近尝试了下VMware下安装MacOS 系统, 安装过程中发现网上可供参考的文章都是VMware Workstation 10以下, MacOS X 10.9以下的文章, 只能提供大概的思路, 但是实际安装起来由于版本问题, 走了不少弯路, 所以我尝试写以下总结, 希望能给有兴趣安装OSX的人提供一点帮助。     写在前面的话: 其实安装好后发现, 由于我的th</div> </li> <li><a href="/article/138.htm" title="关于《基于模型驱动的B/S在线开发平台》源代码开源的疑虑?" target="_blank">关于《基于模型驱动的B/S在线开发平台》源代码开源的疑虑?</a> <span class="text-muted">deathwknight</span> <a class="tag" taget="_blank" href="/search/JavaScript/1.htm">JavaScript</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E6%A1%86%E6%9E%B6/1.htm">框架</a> <div>本人从学习Java开发到现在已有10年整,从一个要自学 java买成javascript的小菜鸟,成长为只会java和javascript语言的老菜鸟(个人邮箱:deathwknight@163.com) 一路走来,跌跌撞撞。用自己的三年多业余时间,瞎搞一个小东西(基于模型驱动的B/S在线开发平台,非MVC框架、非代码生成)。希望与大家一起分享,同时有许些疑虑,希望有人可以交流下 平台</div> </li> <li><a href="/article/265.htm" title="如何把maven项目转成web项目" target="_blank">如何把maven项目转成web项目</a> <span class="text-muted">Kai_Ge</span> <a class="tag" taget="_blank" href="/search/maven/1.htm">maven</a><a class="tag" taget="_blank" href="/search/MyEclipse/1.htm">MyEclipse</a> <div>创建Web工程,使用eclipse ee创建maven web工程 1.右键项目,选择Project Facets,点击Convert to faceted from 2.更改Dynamic Web Module的Version为2.5.(3.0为Java7的,Tomcat6不支持). 如果提示错误,可能需要在Java Compiler设置Compiler compl</div> </li> <li><a href="/article/392.htm" title="主管???" target="_blank">主管???</a> <span class="text-muted">Array_06</span> <a class="tag" taget="_blank" href="/search/%E5%B7%A5%E4%BD%9C/1.htm">工作</a> <div>转载:http://www.blogjava.net/fastzch/archive/2010/11/25/339054.html 很久以前跟同事参加的培训,同事整理得很详细,必须得转! 前段时间,公司有组织中高阶主管及其培养干部进行了为期三天的管理训练培训。三天的课程下来,虽然内容较多,因对老师三天来的课程内容深有感触,故借着整理学习心得的机会,将三天来的培训课程做了一个</div> </li> <li><a href="/article/519.htm" title="python内置函数大全" target="_blank">python内置函数大全</a> <span class="text-muted">2002wmj</span> <a class="tag" taget="_blank" href="/search/python/1.htm">python</a> <div>最近一直在看python的document,打算在基础方面重点看一下python的keyword、Build-in Function、Build-in Constants、Build-in Types、Build-in Exception这四个方面,其实在看的时候发现整个《The Python Standard Library》章节都是很不错的,其中描述了很多不错的主题。先把Build-in Fu</div> </li> <li><a href="/article/646.htm" title="JSP页面通过JQUERY合并行" target="_blank">JSP页面通过JQUERY合并行</a> <span class="text-muted">357029540</span> <a class="tag" taget="_blank" href="/search/JavaScript/1.htm">JavaScript</a><a class="tag" taget="_blank" href="/search/jquery/1.htm">jquery</a> <div>在写程序的过程中我们难免会遇到在页面上合并单元行的情况,如图所示 如果对于会的同学可能很简单,但是对没有思路的同学来说还是比较麻烦的,提供一下用JQUERY实现的参考代码 function mergeCell(){         var trs = $("#table tr"); &nb</div> </li> <li><a href="/article/773.htm" title="Java基础" target="_blank">Java基础</a> <span class="text-muted">冰天百华</span> <a class="tag" taget="_blank" href="/search/java%E5%9F%BA%E7%A1%80/1.htm">java基础</a> <div>学习函数式编程 package base; import java.text.DecimalFormat; public class Main { public static void main(String[] args) { // Integer a = 4; // Double aa = (double)a / 100000; // Decimal</div> </li> <li><a href="/article/900.htm" title="unix时间戳相互转换" target="_blank">unix时间戳相互转换</a> <span class="text-muted">adminjun</span> <a class="tag" taget="_blank" href="/search/%E8%BD%AC%E6%8D%A2/1.htm">转换</a><a class="tag" taget="_blank" href="/search/unix/1.htm">unix</a><a class="tag" taget="_blank" href="/search/%E6%97%B6%E9%97%B4%E6%88%B3/1.htm">时间戳</a> <div>如何在不同编程语言中获取现在的Unix时间戳(Unix timestamp)? Java time JavaScript Math.round(new Date().getTime()/1000) getTime()返回数值的单位是毫秒 Microsoft .NET / C# epoch = (DateTime.Now.ToUniversalTime().Ticks - 62135</div> </li> <li><a href="/article/1027.htm" title="作为一个合格程序员该做的事" target="_blank">作为一个合格程序员该做的事</a> <span class="text-muted">aijuans</span> <a class="tag" taget="_blank" href="/search/%E7%A8%8B%E5%BA%8F%E5%91%98/1.htm">程序员</a> <div>作为一个合格程序员每天该做的事 1、总结自己一天任务的完成情况 最好的方式是写工作日志,把自己今天完成了什么事情,遇见了什么问题都记录下来,日后翻看好处多多 2、考虑自己明天应该做的主要工作 把明天要做的事情列出来,并按照优先级排列,第二天应该把自己效率最高的时间分配给最重要的工作 3、考虑自己一天工作中失误的地方,并想出避免下一次再犯的方法 出错不要紧,最重</div> </li> <li><a href="/article/1154.htm" title="由html5视频播放引发的总结" target="_blank">由html5视频播放引发的总结</a> <span class="text-muted">ayaoxinchao</span> <a class="tag" taget="_blank" href="/search/html5/1.htm">html5</a><a class="tag" taget="_blank" href="/search/%E8%A7%86%E9%A2%91/1.htm">视频</a><a class="tag" taget="_blank" href="/search/video/1.htm">video</a> <div>前言   项目中存在视频播放的功能,前期设计是以flash播放器播放视频的。但是现在由于需要兼容苹果的设备,必须采用html5的方式来播放视频。我就出于兴趣对html5播放视频做了简单的了解,不了解不知道,水真是很深。本文所记录的知识一些浅尝辄止的知识,说起来很惭愧。   视频结构   本该直接介绍html5的<video>的,但鉴于本人对视频</div> </li> <li><a href="/article/1281.htm" title="解决httpclient访问自签名https报javax.net.ssl.SSLHandshakeException: sun.security.validat" target="_blank">解决httpclient访问自签名https报javax.net.ssl.SSLHandshakeException: sun.security.validat</a> <span class="text-muted">bewithme</span> <a class="tag" taget="_blank" href="/search/httpclient/1.htm">httpclient</a> <div>     如果你构建了一个https协议的站点,而此站点的安全证书并不是合法的第三方证书颁发机构所签发,那么你用httpclient去访问此站点会报如下错误   javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path bu</div> </li> <li><a href="/article/1408.htm" title="Jedis连接池的入门级使用" target="_blank">Jedis连接池的入门级使用</a> <span class="text-muted">bijian1013</span> <a class="tag" taget="_blank" href="/search/redis/1.htm">redis</a><a class="tag" taget="_blank" href="/search/redis%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">redis数据库</a><a class="tag" taget="_blank" href="/search/jedis/1.htm">jedis</a> <div>Jedis连接池操作步骤如下:         a.获取Jedis实例需要从JedisPool中获取;         b.用完Jedis实例需要返还给JedisPool;         c.如果Jedis在使用过程中出错,则也需要还给JedisPool; packag</div> </li> <li><a href="/article/1535.htm" title="变与不变" target="_blank">变与不变</a> <span class="text-muted">bingyingao</span> <a class="tag" taget="_blank" href="/search/%E4%B8%8D%E5%8F%98/1.htm">不变</a><a class="tag" taget="_blank" href="/search/%E5%8F%98/1.htm">变</a><a class="tag" taget="_blank" href="/search/%E4%BA%B2%E6%83%85%E6%B0%B8%E6%81%92/1.htm">亲情永恒</a> <div>变与不变    周末骑车转到了五年前租住的小区,曾经最爱吃的西北面馆、江西水饺、手工拉面早已不在,    各种店铺都换了好几茬,这些是变的。    三年前还很流行的一款手机在今天看起来已经落后的不像样子。    三年前还运行的好好的一家公司,今天也已经不复存在。    一座座高楼拔地而起,</div> </li> <li><a href="/article/1662.htm" title="【Scala十】Scala核心四:集合框架之List" target="_blank">【Scala十】Scala核心四:集合框架之List</a> <span class="text-muted">bit1129</span> <a class="tag" taget="_blank" href="/search/scala/1.htm">scala</a> <div>Spark的RDD作为一个分布式不可变的数据集合,它提供的转换操作,很多是借鉴于Scala的集合框架提供的一些函数,因此,有必要对Scala的集合进行详细的了解   1. 泛型集合都是协变的,对于List而言,如果B是A的子类,那么List[B]也是List[A]的子类,即可以把List[B]的实例赋值给List[A]变量   2. 给变量赋值(注意val关键字,a,b</div> </li> <li><a href="/article/1789.htm" title="Nested Functions in C" target="_blank">Nested Functions in C</a> <span class="text-muted">bookjovi</span> <a class="tag" taget="_blank" href="/search/c/1.htm">c</a><a class="tag" taget="_blank" href="/search/closure/1.htm">closure</a> <div>  Nested Functions 又称closure,属于functional language中的概念,一直以为C中是不支持closure的,现在看来我错了,不过C标准中是不支持的,而GCC支持。   既然GCC支持了closure,那么 lexical scoping自然也支持了,同时在C中label也是可以在nested functions中自由跳转的</div> </li> <li><a href="/article/1916.htm" title="Java-Collections Framework学习与总结-WeakHashMap" target="_blank">Java-Collections Framework学习与总结-WeakHashMap</a> <span class="text-muted">BrokenDreams</span> <a class="tag" taget="_blank" href="/search/Collections/1.htm">Collections</a> <div>        总结这个类之前,首先看一下Java引用的相关知识。Java的引用分为四种:强引用、软引用、弱引用和虚引用。         强引用:就是常见的代码中的引用,如Object o = new Object();存在强引用的对象不会被垃圾收集</div> </li> <li><a href="/article/2043.htm" title="读《研磨设计模式》-代码笔记-解释器模式-Interpret" target="_blank">读《研磨设计模式》-代码笔记-解释器模式-Interpret</a> <span class="text-muted">bylijinnan</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/1.htm">设计模式</a> <div>声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/ package design.pattern; /* * 解释器(Interpreter)模式的意图是可以按照自己定义的组合规则集合来组合可执行对象 * * 代码示例实现XML里面1.读取单个元素的值 2.读取单个属性的值 * 多</div> </li> <li><a href="/article/2170.htm" title="After Effects操作&快捷键" target="_blank">After Effects操作&快捷键</a> <span class="text-muted">cherishLC</span> <a class="tag" taget="_blank" href="/search/After+Effects/1.htm">After Effects</a> <div>1、快捷键官方文档 中文版:https://helpx.adobe.com/cn/after-effects/using/keyboard-shortcuts-reference.html 英文版:https://helpx.adobe.com/after-effects/using/keyboard-shortcuts-reference.html 2、常用快捷键</div> </li> <li><a href="/article/2297.htm" title="Maven 常用命令" target="_blank">Maven 常用命令</a> <span class="text-muted">crabdave</span> <a class="tag" taget="_blank" href="/search/maven/1.htm">maven</a> <div>Maven 常用命令   mvn archetype:generate mvn install mvn clean mvn clean complie mvn clean test mvn clean install mvn clean package mvn test mvn package mvn site   mvn dependency:res</div> </li> <li><a href="/article/2424.htm" title="shell bad substitution" target="_blank">shell bad substitution</a> <span class="text-muted">daizj</span> <a class="tag" taget="_blank" href="/search/shell/1.htm">shell</a><a class="tag" taget="_blank" href="/search/%E8%84%9A%E6%9C%AC/1.htm">脚本</a> <div>#!/bin/sh /data/script/common/run_cmd.exp 192.168.13.168 "impala-shell -islave4 -q 'insert OVERWRITE table imeis.${tableName} select ${selectFields}, ds, fnv_hash(concat(cast(ds as string), im</div> </li> <li><a href="/article/2551.htm" title="Java SE 第二讲(原生数据类型 Primitive Data Type)" target="_blank">Java SE 第二讲(原生数据类型 Primitive Data Type)</a> <span class="text-muted">dcj3sjt126com</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a> <div>Java SE  第二讲: 1.   Windows: notepad, editplus, ultraedit, gvim Linux: vi, vim, gedit 2.   Java 中的数据类型分为两大类: 1)原生数据类型  (Primitive Data Type) 2)引用类型(对象类型)  (R</div> </li> <li><a href="/article/2678.htm" title="CGridView中实现批量删除" target="_blank">CGridView中实现批量删除</a> <span class="text-muted">dcj3sjt126com</span> <a class="tag" taget="_blank" href="/search/PHP/1.htm">PHP</a><a class="tag" taget="_blank" href="/search/yii/1.htm">yii</a> <div>1,CGridView中的columns添加 array( 'selectableRows' => 2, 'footer' => '<button type="button" onclick="GetCheckbox();" style=&</div> </li> <li><a href="/article/2805.htm" title="Java中泛型的各种使用" target="_blank">Java中泛型的各种使用</a> <span class="text-muted">dyy_gusi</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E6%B3%9B%E5%9E%8B/1.htm">泛型</a> <div>Java中的泛型的使用:1.普通的泛型使用 在使用类的时候后面的<>中的类型就是我们确定的类型。 public class MyClass1<T> {//此处定义的泛型是T private T var; public T getVar() { return var; } public void setVa</div> </li> <li><a href="/article/2932.htm" title="Web开发技术十年发展历程" target="_blank">Web开发技术十年发展历程</a> <span class="text-muted">gcq511120594</span> <a class="tag" taget="_blank" href="/search/Web/1.htm">Web</a><a class="tag" taget="_blank" href="/search/%E6%B5%8F%E8%A7%88%E5%99%A8/1.htm">浏览器</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E6%8C%96%E6%8E%98/1.htm">数据挖掘</a> <div>回顾web开发技术这十年发展历程: Ajax 03年的时候我上六年级,那时候网吧刚在小县城的角落萌生。传奇,大话西游第一代网游一时风靡。我抱着试一试的心态给了网吧老板两块钱想申请个号玩玩,然后接下来的一个小时我一直在,注,册,账,号。 彼时网吧用的512k的带宽,注册的时候,填了一堆信息,提交,页面跳转,嘣,”您填写的信息有误,请重填”。然后跳转回注册页面,以此循环。我现在时常想,如果当时a</div> </li> <li><a href="/article/3059.htm" title="openSession()与getCurrentSession()区别:" target="_blank">openSession()与getCurrentSession()区别:</a> <span class="text-muted">hetongfei</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/DAO/1.htm">DAO</a><a class="tag" taget="_blank" href="/search/Hibernate/1.htm">Hibernate</a> <div>来自 http://blog.csdn.net/dy511/article/details/6166134 1.getCurrentSession创建的session会和绑定到当前线程,而openSession不会。 2. getCurrentSession创建的线程会在事务回滚或事物提交后自动关闭,而openSession必须手动关闭。 这里getCurrentSession本地事务(本地</div> </li> <li><a href="/article/3186.htm" title="第一章 安装Nginx+Lua开发环境" target="_blank">第一章 安装Nginx+Lua开发环境</a> <span class="text-muted">jinnianshilongnian</span> <a class="tag" taget="_blank" href="/search/nginx/1.htm">nginx</a><a class="tag" taget="_blank" href="/search/lua/1.htm">lua</a><a class="tag" taget="_blank" href="/search/openresty/1.htm">openresty</a> <div>首先我们选择使用OpenResty,其是由Nginx核心加很多第三方模块组成,其最大的亮点是默认集成了Lua开发环境,使得Nginx可以作为一个Web Server使用。借助于Nginx的事件驱动模型和非阻塞IO,可以实现高性能的Web应用程序。而且OpenResty提供了大量组件如Mysql、Redis、Memcached等等,使在Nginx上开发Web应用更方便更简单。目前在京东如实时价格、秒</div> </li> <li><a href="/article/3313.htm" title="HSQLDB In-Process方式访问内存数据库" target="_blank">HSQLDB In-Process方式访问内存数据库</a> <span class="text-muted">liyonghui160com</span> <div>    HSQLDB一大特色就是能够在内存中建立数据库,当然它也能将这些内存数据库保存到文件中以便实现真正的持久化。   先睹为快!   下面是一个In-Process方式访问内存数据库的代码示例:     下面代码需要引入hsqldb.jar包 (hsqldb-2.2.8)   import java.s</div> </li> <li><a href="/article/3440.htm" title="Java线程的5个使用技巧" target="_blank">Java线程的5个使用技巧</a> <span class="text-muted">pda158</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84/1.htm">数据结构</a> <div>Java线程有哪些不太为人所知的技巧与用法?   萝卜白菜各有所爱。像我就喜欢Java。学无止境,这也是我喜欢它的一个原因。日常 工作中你所用到的工具,通常都有些你从来没有了解过的东西,比方说某个方法或者是一些有趣的用法。比如说线程。没错,就是线程。或者确切说是Thread这个类。当我们在构建高可扩展性系统的时候,通常会面临各种各样的并发编程的问题,不过我们现在所要讲的可能会略有不同。 </div> </li> <li><a href="/article/3567.htm" title="开发资源大整合:编程语言篇——JavaScript(1)" target="_blank">开发资源大整合:编程语言篇——JavaScript(1)</a> <span class="text-muted">shoothao</span> <a class="tag" taget="_blank" href="/search/JavaScript/1.htm">JavaScript</a> <div>概述:本系列的资源整合来自于github中各个领域的大牛,来收藏你感兴趣的东西吧。     程序包管理器   管理javascript库并提供对这些库的快速使用与打包的服务。 Bower - 用于web的程序包管理。 component - 用于客户端的程序包管理,构建更好的web应用程序。 spm - 全新的静态的文件包管</div> </li> <li><a href="/article/3694.htm" title="避免使用终结函数" target="_blank">避免使用终结函数</a> <span class="text-muted">vahoa.ma</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/jvm/1.htm">jvm</a><a class="tag" taget="_blank" href="/search/C%2B%2B/1.htm">C++</a> <div>终结函数(finalizer)通常是不可预测的,常常也是很危险的,一般情况下不是必要的。使用终结函数会导致不稳定的行为、更差的性能,以及带来移植性问题。不要把终结函数当做C++中的析构函数(destructors)的对应物。       我自己总结了一下这一条的综合性结论是这样的: 1)在涉及使用资源,使用完毕后要释放资源的情形下,首先要用一个显示的方</div> </li> </ul> </div> </div> </div> <div> <div class="container"> <div class="indexes"> <strong>按字母分类:</strong> <a href="/tags/A/1.htm" target="_blank">A</a><a href="/tags/B/1.htm" target="_blank">B</a><a href="/tags/C/1.htm" target="_blank">C</a><a href="/tags/D/1.htm" target="_blank">D</a><a href="/tags/E/1.htm" target="_blank">E</a><a href="/tags/F/1.htm" target="_blank">F</a><a href="/tags/G/1.htm" target="_blank">G</a><a href="/tags/H/1.htm" target="_blank">H</a><a href="/tags/I/1.htm" target="_blank">I</a><a href="/tags/J/1.htm" target="_blank">J</a><a href="/tags/K/1.htm" target="_blank">K</a><a href="/tags/L/1.htm" target="_blank">L</a><a href="/tags/M/1.htm" target="_blank">M</a><a href="/tags/N/1.htm" target="_blank">N</a><a href="/tags/O/1.htm" target="_blank">O</a><a href="/tags/P/1.htm" target="_blank">P</a><a href="/tags/Q/1.htm" target="_blank">Q</a><a href="/tags/R/1.htm" target="_blank">R</a><a href="/tags/S/1.htm" target="_blank">S</a><a href="/tags/T/1.htm" target="_blank">T</a><a href="/tags/U/1.htm" target="_blank">U</a><a href="/tags/V/1.htm" target="_blank">V</a><a href="/tags/W/1.htm" target="_blank">W</a><a href="/tags/X/1.htm" target="_blank">X</a><a href="/tags/Y/1.htm" target="_blank">Y</a><a href="/tags/Z/1.htm" target="_blank">Z</a><a href="/tags/0/1.htm" target="_blank">其他</a> </div> </div> </div> <footer id="footer" class="mb30 mt30"> <div class="container"> <div class="footBglm"> <a target="_blank" href="/">首页</a> - <a target="_blank" href="/custom/about.htm">关于我们</a> - <a target="_blank" href="/search/Java/1.htm">站内搜索</a> - <a target="_blank" href="/sitemap.txt">Sitemap</a> - <a target="_blank" href="/custom/delete.htm">侵权投诉</a> </div> <div class="copyright">版权所有 IT知识库 CopyRight © 2000-2050 E-COM-NET.COM , All Rights Reserved. <!-- <a href="https://beian.miit.gov.cn/" rel="nofollow" target="_blank">京ICP备09083238号</a><br>--> </div> </div> </footer> <!-- 代码高亮 --> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shCore.js"></script> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shLegacy.js"></script> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shAutoloader.js"></script> <link type="text/css" rel="stylesheet" href="/static/syntaxhighlighter/styles/shCoreDefault.css"/> <script type="text/javascript" src="/static/syntaxhighlighter/src/my_start_1.js"></script> </body> </html>