下载B站视频作为PPT素材

下载B站视频作为PPT素材

    • 1. 下载原理
    • 2. 网页分析
    • 3. 请求页面,找到数据
    • 4. 数据解析
    • 5. 音频、视频下载
    • 6. 合并音频与视频
    • 7. 完整代码

  其实使用爬虫也不是第一次了,之前从网站爬过图片,下载过大型文件,如今从下载视频开始才想到要写一篇关于爬虫的博客。
  这次是为了给PPT添加视频,发现我的WPS当前版本只能添加本地视频,在线视频无法添加,并且还需要会员才可以添加大于20M的视频。Office只能添加它支持的以YouTube为代表的视频网站的一些视频,无法添加像B站等国内网站的在线视频。对于添加本地视频,WPS和Office添加方法没有什么区别,WPS还有文件大小的限制。

下载B站视频作为PPT素材_第1张图片
  不能添加在线视频就只能退而求其次,添加下载好的视频,这就遇到个问题,我们要先下载好视频。

1. 下载原理

  获取视频资源的源地址,然后爬取视频的二进制内容,再写入到本地即可。

2. 网页分析

案例视频地址:https://www.bilibili.com/video/BV1Um411r7gW/?spm_id_from=333.337.search-card.all.click&vd_source=148afb6cb7e28daa45a2f426a0dec4ee

  打开该网页,然后F12进入开发者模式,接着点开网络—>全部,因为视频资源一般比较大,我这里根据大小进行了从大到小的排序,找到了第一条这些可能和视频源地址有关。

下载B站视频作为PPT素材_第2张图片
  查看页面源代码,经过查找可以发现视频在“playinfo”处,图片并不完整,大家可以自行搜取。

3. 请求页面,找到数据

	session = requests.session()
    url = 'https://www.bilibili.com/video/BV1Um411r7gW/?spm_id_from=333.337.search-card.all.click&vd_source=148afb6cb7e28daa45a2f426a0dec4ee'
    headers = {
        'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/106.0.0.0 Safari/537.36 Edg/106.0.1370.37',
        "Referer": "https://www.bilibili.com"}
    resp = session.get(url, headers=headers)
    # print(resp.text)

  利用session代替requests进行请求,session可以认为是一连串的请求,在这个过程中的cookie不会丢失。
referer代表防盗链,请求头中没有这一项将请求不到内容。防盗链可以在抓包工具中查找

4. 数据解析

	title = re.findall(r'(.*?)_哔哩哔哩_bilibili'</span><span class="token punctuation">,</span> resp<span class="token punctuation">.</span>text<span class="token punctuation">)</span><span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span>
    play_info <span class="token operator">=</span> re<span class="token punctuation">.</span>findall<span class="token punctuation">(</span><span class="token string">r'<script>window.__playinfo__=(.*?)</script>'</span><span class="token punctuation">,</span> resp<span class="token punctuation">.</span>text<span class="token punctuation">)</span><span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span>

    <span class="token triple-quoted-string string">'''print(title)
    print(play_info,type(play_info))'''</span>
    json_data <span class="token operator">=</span> json<span class="token punctuation">.</span>loads<span class="token punctuation">(</span>play_info<span class="token punctuation">)</span>
    <span class="token comment"># pprint.pprint(json_data) #格式化输出,便于观看</span>
    <span class="token comment"># print(type(json_data))</span>
    audio_url <span class="token operator">=</span> json_data<span class="token punctuation">[</span><span class="token string">'data'</span><span class="token punctuation">]</span><span class="token punctuation">[</span><span class="token string">'dash'</span><span class="token punctuation">]</span><span class="token punctuation">[</span><span class="token string">'audio'</span><span class="token punctuation">]</span><span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span><span class="token punctuation">[</span><span class="token string">'backupUrl'</span><span class="token punctuation">]</span><span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span>  <span class="token comment"># 音频地址 [0]清晰度最高</span>
    video_url <span class="token operator">=</span> json_data<span class="token punctuation">[</span><span class="token string">'data'</span><span class="token punctuation">]</span><span class="token punctuation">[</span><span class="token string">'dash'</span><span class="token punctuation">]</span><span class="token punctuation">[</span><span class="token string">'video'</span><span class="token punctuation">]</span><span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span><span class="token punctuation">[</span><span class="token string">'backupUrl'</span><span class="token punctuation">]</span><span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span>  <span class="token comment"># 视频地址</span>
</code></pre> 
  <p>title与代码对应部分</p> 
  <pre><code class="prism language-bash"><span class="token operator"><</span>title data-vue-meta<span class="token operator">=</span><span class="token string">"true"</span><span class="token operator">></span>【揭秘】Transformer诞生背后的故事_哔哩哔哩_bilibili<span class="token operator"><</span>/title<span class="token operator">></span>
</code></pre> 
  <p>playinfo与代码对应部分</p> 
  <pre><code class="prism language-bash"><span class="token operator"><</span>script<span class="token operator">></span>
<span class="token assign-left variable">window.__playinfo__</span><span class="token operator">=</span><span class="token punctuation">{</span><span class="token string">"code"</span>:0,<span class="token string">"message"</span><span class="token builtin class-name">:</span><span class="token string">"0"</span>,<span class="token string">"ttl"</span>:1,<span class="token string">"data"</span>:<span class="token punctuation">{</span><span class="token string">"from"</span><span class="token builtin class-name">:</span><span class="token string">"local"</span>,<span class="token string">"result"</span><span class="token builtin class-name">:</span><span class="token string">"suee"</span>,<span class="token string">"message"</span><span class="token builtin class-name">:</span><span class="token string">""</span>,<span class="token string">"quality"</span>:32,<span class="token string">"format"</span><span class="token builtin class-name">:</span><span class="token string">"flv480"</span>,<span class="token string">"timelength"</span>:229505,<span class="token string">"accept_format"</span><span class="token builtin class-name">:</span><span class="token string">"hdflv2,flv,flv720,flv480,mp4"</span>,<span class="token string">"accept_description"</span>:<span class="token punctuation">[</span><span class="token string">"高清 1080P+"</span>,<span class="token string">"高清 1080P"</span>,<span class="token string">"高清 720P"</span>,<span class="token string">"清晰 480P"</span>,<span class="token string">"流畅 360P"</span><span class="token punctuation">]</span>,<span class="token string">"accept_quality"</span>:<span class="token punctuation">[</span><span class="token number">112,80</span>,64,32,16<span class="token punctuation">]</span>,<span class="token string">"video_codecid"</span>:7,<span class="token string">"seek_param"</span><span class="token builtin class-name">:</span><span class="token string">"start"</span>,<span class="token string">"seek_type"</span><span class="token builtin class-name">:</span><span class="token string">"offset"</span>,<span class="token string">"dash"</span>:<span class="token punctuation">{</span><span class="token string">"duration"</span>:230,<span class="token string">"minBufferTime"</span>:1.5,<span class="token string">"min_buffer_time"</span>:1.5,<span class="token string">"video"</span>:<span class="token punctuation">[</span><span class="token punctuation">{</span><span class="token string">"id"</span>:32,<span class="token string">"baseUrl"</span><span class="token builtin class-name">:</span>
</code></pre> 
  <p>  请求到页面源代码后,解析提取“playinfo”即视频链接项,使用正则表达式(python中re库)进行提取。<br>   利用json库将提取数据转化为字典数据,并利用pprint库进行格式化输出进行分析 。</p> 
  <p>  数据中包含视频和音频两种内容,故b站的视频和音频是分开的,我们都要下载下来,然后用其他工具合成。<br>   上面已经把提取数据转化为字典,然后利用字典找到音频audio_url 和视频地址video_url。</p> 
  <h3>5. 音频、视频下载</h3> 
  <pre><code class="prism language-python">	audio_content <span class="token operator">=</span> session<span class="token punctuation">.</span>get<span class="token punctuation">(</span>audio_url<span class="token punctuation">,</span> headers<span class="token operator">=</span>headers<span class="token punctuation">)</span><span class="token punctuation">.</span>content  <span class="token comment"># 音频二进制内容</span>
    video_content <span class="token operator">=</span> session<span class="token punctuation">.</span>get<span class="token punctuation">(</span>video_url<span class="token punctuation">,</span> headers<span class="token operator">=</span>headers<span class="token punctuation">)</span><span class="token punctuation">.</span>content  <span class="token comment"># 视频二进制内容</span>
    <span class="token keyword">with</span> <span class="token builtin">open</span><span class="token punctuation">(</span><span class="token string">r'D:\documents\python\daily\download/'</span> <span class="token operator">+</span> title <span class="token operator">+</span> <span class="token string">'.mp3'</span><span class="token punctuation">,</span> <span class="token string">'wb'</span><span class="token punctuation">)</span> <span class="token keyword">as</span> f<span class="token punctuation">:</span>
        f<span class="token punctuation">.</span>write<span class="token punctuation">(</span>audio_content<span class="token punctuation">)</span>
    <span class="token keyword">with</span> <span class="token builtin">open</span><span class="token punctuation">(</span><span class="token string">r'D:\documents\python\daily\download/'</span> <span class="token operator">+</span> title <span class="token operator">+</span> <span class="token string">'.mp4'</span><span class="token punctuation">,</span> <span class="token string">'wb'</span><span class="token punctuation">)</span> <span class="token keyword">as</span> f<span class="token punctuation">:</span>
        f<span class="token punctuation">.</span>write<span class="token punctuation">(</span>video_content<span class="token punctuation">)</span>
</code></pre> 
  <p>  请求音频和视频地址,并下载下来。</p> 
  <h3>6. 合并音频与视频</h3> 
  <pre><code class="prism language-python"><span class="token keyword">from</span> moviepy<span class="token punctuation">.</span>editor <span class="token keyword">import</span> <span class="token operator">*</span>


<span class="token keyword">def</span> <span class="token function">merge</span><span class="token punctuation">(</span>title<span class="token punctuation">)</span><span class="token punctuation">:</span>
    video_path <span class="token operator">=</span> title <span class="token operator">+</span> <span class="token string">'.mp4'</span>
    audio_path <span class="token operator">=</span> title <span class="token operator">+</span> <span class="token string">'.mp3'</span>
    <span class="token comment"># 提取音轨</span>
    audio <span class="token operator">=</span> AudioFileClip<span class="token punctuation">(</span>audio_path<span class="token punctuation">)</span>
    <span class="token comment"># 读入视频</span>
    video <span class="token operator">=</span> VideoFileClip<span class="token punctuation">(</span>video_path<span class="token punctuation">)</span>
    <span class="token comment"># 将音轨合并到视频中</span>
    video <span class="token operator">=</span> video<span class="token punctuation">.</span>set_audio<span class="token punctuation">(</span>audio<span class="token punctuation">)</span>
    <span class="token comment"># 输出</span>
    video<span class="token punctuation">.</span>write_videofile<span class="token punctuation">(</span><span class="token string-interpolation"><span class="token string">f"</span><span class="token interpolation"><span class="token punctuation">{</span>title<span class="token punctuation">}</span></span><span class="token string">(含音频).mp4"</span></span><span class="token punctuation">)</span>
</code></pre> 
  <p>调用</p> 
  <pre><code class="prism language-python">	merge<span class="token punctuation">(</span>title<span class="token punctuation">)</span>
    <span class="token keyword">print</span><span class="token punctuation">(</span><span class="token string">'有音频视频处理完成'</span><span class="token punctuation">)</span>
</code></pre> 
  <h3>7. 完整代码</h3> 
  <pre><code class="prism language-python"><span class="token comment"># -*- coding : UTF-8 -*-</span>
<span class="token comment"># @file   : download_bilibili.py</span>
<span class="token comment"># @Time   : 2024/8/26 0026 7:51</span>
<span class="token comment"># @Author : Administrator</span>


<span class="token keyword">import</span> pprint
<span class="token keyword">import</span> requests
<span class="token keyword">import</span> re
<span class="token keyword">import</span> json
<span class="token keyword">from</span> moviepy<span class="token punctuation">.</span>editor <span class="token keyword">import</span> <span class="token operator">*</span>


<span class="token keyword">def</span> <span class="token function">merge</span><span class="token punctuation">(</span>title<span class="token punctuation">)</span><span class="token punctuation">:</span>
    video_path <span class="token operator">=</span> title <span class="token operator">+</span> <span class="token string">'.mp4'</span>
    audio_path <span class="token operator">=</span> title <span class="token operator">+</span> <span class="token string">'.mp3'</span>
    <span class="token comment"># 提取音轨</span>
    audio <span class="token operator">=</span> AudioFileClip<span class="token punctuation">(</span>audio_path<span class="token punctuation">)</span>
    <span class="token comment"># 读入视频</span>
    video <span class="token operator">=</span> VideoFileClip<span class="token punctuation">(</span>video_path<span class="token punctuation">)</span>
    <span class="token comment"># 将音轨合并到视频中</span>
    video <span class="token operator">=</span> video<span class="token punctuation">.</span>set_audio<span class="token punctuation">(</span>audio<span class="token punctuation">)</span>
    <span class="token comment"># 输出</span>
    video<span class="token punctuation">.</span>write_videofile<span class="token punctuation">(</span><span class="token string-interpolation"><span class="token string">f"</span><span class="token interpolation"><span class="token punctuation">{</span>title<span class="token punctuation">}</span></span><span class="token string">(含音频).mp4"</span></span><span class="token punctuation">)</span>


<span class="token keyword">if</span> __name__ <span class="token operator">==</span> <span class="token string">"__main__"</span><span class="token punctuation">:</span>
    session <span class="token operator">=</span> requests<span class="token punctuation">.</span>session<span class="token punctuation">(</span><span class="token punctuation">)</span>
    url <span class="token operator">=</span> <span class="token string">'https://www.bilibili.com/video/BV1Um411r7gW/?spm_id_from=333.337.search-card.all.click&vd_source=148afb6cb7e28daa45a2f426a0dec4ee'</span>
    headers <span class="token operator">=</span> <span class="token punctuation">{</span>
        <span class="token string">'user-agent'</span><span class="token punctuation">:</span> <span class="token string">'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/106.0.0.0 Safari/537.36 Edg/106.0.1370.37'</span><span class="token punctuation">,</span>
        <span class="token string">"Referer"</span><span class="token punctuation">:</span> <span class="token string">"https://www.bilibili.com"</span><span class="token punctuation">}</span>
    resp <span class="token operator">=</span> session<span class="token punctuation">.</span>get<span class="token punctuation">(</span>url<span class="token punctuation">,</span> headers<span class="token operator">=</span>headers<span class="token punctuation">)</span>
    <span class="token comment"># print(resp.text)</span>
    title <span class="token operator">=</span> re<span class="token punctuation">.</span>findall<span class="token punctuation">(</span><span class="token string">r'<title data-vue-meta="true">(.*?)_哔哩哔哩_bilibili'</span><span class="token punctuation">,</span> resp<span class="token punctuation">.</span>text<span class="token punctuation">)</span><span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span>
    play_info <span class="token operator">=</span> re<span class="token punctuation">.</span>findall<span class="token punctuation">(</span><span class="token string">r'<script>window.__playinfo__=(.*?)</script>'</span><span class="token punctuation">,</span> resp<span class="token punctuation">.</span>text<span class="token punctuation">)</span><span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span>

    <span class="token triple-quoted-string string">'''print(title)
    print(play_info,type(play_info))'''</span>
    json_data <span class="token operator">=</span> json<span class="token punctuation">.</span>loads<span class="token punctuation">(</span>play_info<span class="token punctuation">)</span>
    <span class="token comment"># pprint.pprint(json_data) #格式化输出,便于观看</span>
    <span class="token comment"># print(type(json_data))</span>
    audio_url <span class="token operator">=</span> json_data<span class="token punctuation">[</span><span class="token string">'data'</span><span class="token punctuation">]</span><span class="token punctuation">[</span><span class="token string">'dash'</span><span class="token punctuation">]</span><span class="token punctuation">[</span><span class="token string">'audio'</span><span class="token punctuation">]</span><span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span><span class="token punctuation">[</span><span class="token string">'backupUrl'</span><span class="token punctuation">]</span><span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span>  <span class="token comment"># 音频地址 [0]清晰度最高</span>
    video_url <span class="token operator">=</span> json_data<span class="token punctuation">[</span><span class="token string">'data'</span><span class="token punctuation">]</span><span class="token punctuation">[</span><span class="token string">'dash'</span><span class="token punctuation">]</span><span class="token punctuation">[</span><span class="token string">'video'</span><span class="token punctuation">]</span><span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span><span class="token punctuation">[</span><span class="token string">'backupUrl'</span><span class="token punctuation">]</span><span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span>  <span class="token comment"># 视频地址</span>

    audio_content <span class="token operator">=</span> session<span class="token punctuation">.</span>get<span class="token punctuation">(</span>audio_url<span class="token punctuation">,</span> headers<span class="token operator">=</span>headers<span class="token punctuation">)</span><span class="token punctuation">.</span>content  <span class="token comment"># 音频二进制内容</span>
    video_content <span class="token operator">=</span> session<span class="token punctuation">.</span>get<span class="token punctuation">(</span>video_url<span class="token punctuation">,</span> headers<span class="token operator">=</span>headers<span class="token punctuation">)</span><span class="token punctuation">.</span>content  <span class="token comment"># 视频二进制内容</span>
    <span class="token keyword">with</span> <span class="token builtin">open</span><span class="token punctuation">(</span><span class="token string">r'D:\documents\python\daily\download/'</span> <span class="token operator">+</span> title <span class="token operator">+</span> <span class="token string">'.mp3'</span><span class="token punctuation">,</span> <span class="token string">'wb'</span><span class="token punctuation">)</span> <span class="token keyword">as</span> f<span class="token punctuation">:</span>
        f<span class="token punctuation">.</span>write<span class="token punctuation">(</span>audio_content<span class="token punctuation">)</span>
    <span class="token keyword">with</span> <span class="token builtin">open</span><span class="token punctuation">(</span><span class="token string">r'D:\documents\python\daily\download/'</span> <span class="token operator">+</span> title <span class="token operator">+</span> <span class="token string">'.mp4'</span><span class="token punctuation">,</span> <span class="token string">'wb'</span><span class="token punctuation">)</span> <span class="token keyword">as</span> f<span class="token punctuation">:</span>
        f<span class="token punctuation">.</span>write<span class="token punctuation">(</span>video_content<span class="token punctuation">)</span>
    merge<span class="token punctuation">(</span>title<span class="token punctuation">)</span>
    <span class="token keyword">print</span><span class="token punctuation">(</span><span class="token string">'有音频视频处理完成'</span><span class="token punctuation">)</span>
</code></pre> 
  <p>  将视频下载到本地后,无论是添加到Office的PPT中还是WPS的PPT中都很方便,但是遇到WPS的PPT有文件大小限制,所以还是使用了Office的PPT。</p> 
  <p>参考:用Python制作一个B站视频下载小工具(文末附完整代码)<br> 参考:bilibili视频合集下载,python实现</p> 
 </div> 
</div>
                            </div>
                        </div>
                    </div>
                    <!--PC和WAP自适应版-->
                    <div id="SOHUCS" sid="1829468562826293248"></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/1899305865350017024.htm"
                           title="三种优化算法" target="_blank">三种优化算法</a>
                        <span class="text-muted">旅者时光</span>
<a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/1.htm">算法</a><a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/1.htm">算法</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>本文将总结遗传算法、粒子群算法、模拟退火三种优化算法的核心思路,并使用python完整实现。实际上,越来越多的优秀算法已经被封装为一个易用的接口。很多时候,一行代码就能实现我们的需求。但了解这些算法的基本逻辑,能够使用最基本的代码实现它。无论对于提升我们的编程能力还是解决问题的能力,都会大有裨益。甚至,改变我们思考问题的方式。1、遗传算法遗传算法,顾名思义,就是借鉴了生物通过遗传变异来逐渐适应环境</div>
                    </li>
                    <li><a href="/article/1899300950376509440.htm"
                           title="使用 Python 合并微信与支付宝账单,生成财务报告" target="_blank">使用 Python 合并微信与支付宝账单,生成财务报告</a>
                        <span class="text-muted"></span>
<a class="tag" taget="_blank" href="/search/python%E5%90%8E%E7%AB%AF/1.htm">python后端</a>
                        <div>最近用思源笔记记东西上瘾,突然想每个月存一份收支记录进去。但手动整理账单太麻烦了,支付宝导出一份CSV,微信又导出一份,格式还不一样,每次复制粘贴头都大。干脆写了个Python脚本一键处理,核心就干两件事:把俩平台的CSV账单合并到一起自动生成带分类表格的Markdown(直接拖进思源就能渲染)代码主要折腾了这些:支付宝账单前24行都是废话,直接skiprows=24跳过去,GBK编码差点让我栽跟</div>
                    </li>
                    <li><a href="/article/1899298673951567872.htm"
                           title="Python Flask 在网页应用程序中处理错误和异常" target="_blank">Python Flask 在网页应用程序中处理错误和异常</a>
                        <span class="text-muted">dowhileprogramming</span>
<a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/flask/1.htm">flask</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a>
                        <div>PythonFlask在网页应用程序中处理错误和异常PythonFlask在网页应用程序中处理错误和异常PythonFlask在网页应用程序中处理错误和异常在我们所有的代码示例中,我们没有注意如何处理用户在浏览器中输入错误的URL或向我们的应用程序发送错误的参数集的情况。这不是设计意图,但目的是首先关注网页应用程序的关键组件。网页框架的美妙之处在于,它们通常默认支持错误处理。如果发生任何错误,将自</div>
                    </li>
                    <li><a href="/article/1899296658152288256.htm"
                           title="农业生产模拟和农业政策分析:WOFOST模型与PCSE模型安装、运行、数据准备;农田农作物生长模拟和产量预测等" target="_blank">农业生产模拟和农业政策分析:WOFOST模型与PCSE模型安装、运行、数据准备;农田农作物生长模拟和产量预测等</a>
                        <span class="text-muted">WangYan2022</span>
<a class="tag" taget="_blank" href="/search/%E4%BD%9C%E7%89%A9%E6%A8%A1%E5%9E%8B/1.htm">作物模型</a><a class="tag" taget="_blank" href="/search/%E5%86%9C%E4%B8%9A/1.htm">农业</a><a class="tag" taget="_blank" href="/search/WOFOST%E6%A8%A1%E5%9E%8B/1.htm">WOFOST模型</a><a class="tag" taget="_blank" href="/search/PCSE%E6%A8%A1%E5%9E%8B/1.htm">PCSE模型</a><a class="tag" taget="_blank" href="/search/%E5%86%9C%E7%94%B0%E7%94%9F%E6%80%81%E7%B3%BB%E7%BB%9F/1.htm">农田生态系统</a><a class="tag" taget="_blank" href="/search/%E4%BD%9C%E7%89%A9%E6%A8%A1%E5%9E%8B/1.htm">作物模型</a><a class="tag" taget="_blank" href="/search/%E5%86%9C%E4%B8%9A%E7%94%9F%E4%BA%A7%E6%A8%A1%E6%8B%9F/1.htm">农业生产模拟</a>
                        <div>WOFOST(WorldFoodStudies)和PCSE(PythonCropSimulationEnvironment)是两个用于农业生产模拟的模型:WOFOST是一个经过多年开发和验证的模型,被广泛用于全球的农业生产模拟和农业政策分析;采用了模块化的结构,可以对不同的农作物和环境条件进行参数化和适应;WOFOST可用于长期模拟,能够模拟整个作物生长周期,包括播种、生长、收获等各个阶段;WOF</div>
                    </li>
                    <li><a href="/article/1899287204946046976.htm"
                           title="基于Python+Vue开发的电影订票管理系统源码+运行步骤" target="_blank">基于Python+Vue开发的电影订票管理系统源码+运行步骤</a>
                        <span class="text-muted">冷琴1996</span>
<a class="tag" taget="_blank" href="/search/Python%E7%B3%BB%E7%BB%9F%E8%AE%BE%E8%AE%A1/1.htm">Python系统设计</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/vue.js/1.htm">vue.js</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+Vue开发的电影订票管理系统(前后端分离),这是一项为大学生课程设计作业而开发的项目。该系统旨在帮助大学生学习并掌握Python编程技能,同时锻炼他们的项目设计与开发能力。通过学习基于Python的电影订票管理系统项目,大学生可以在实践中学习和提升自己的能力,为以后的职业发展打下坚实基础。技术学习之路主要功能影片管理:管理系统可以录入、修改和查询影片的基本信息,如</div>
                    </li>
                    <li><a href="/article/1899286070034493440.htm"
                           title="Python通过YOLO格式TXT标签文件在图像中画框" target="_blank">Python通过YOLO格式TXT标签文件在图像中画框</a>
                        <span class="text-muted">CHERISH_KDX</span>
<a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/YOLO/1.htm">YOLO</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a>
                        <div>使用场景检测数据集标注是否有误:在目标检测算法中需要标注自己的数据集,为了更加方便的检查数据集标注是否有误,可以使用该工具将标注结果绘制在图像中并查看。美化识别结果中的检测框:在一些目标检测场景中,YOLO检测算法原始的检测框绘制会导致重叠、颜色冲突、字体过大等问题。可以使用该工具进行修改。代码importosimportcv2classcheck_label:def__init__(self,c</div>
                    </li>
                    <li><a href="/article/1899282542121512960.htm"
                           title="基于llama_cpp 调用本地模型(llama)实现基本推理" target="_blank">基于llama_cpp 调用本地模型(llama)实现基本推理</a>
                        <span class="text-muted">月光技术杂谈</span>
<a class="tag" taget="_blank" href="/search/%E5%A4%A7%E6%A8%A1%E5%9E%8B%E5%88%9D%E6%8E%A2/1.htm">大模型初探</a><a class="tag" taget="_blank" href="/search/llama/1.htm">llama</a><a class="tag" taget="_blank" href="/search/llama.cpp/1.htm">llama.cpp</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/LLM/1.htm">LLM</a><a class="tag" taget="_blank" href="/search/%E9%9B%86%E6%88%90%E6%98%BE%E5%8D%A1/1.htm">集成显卡</a><a class="tag" taget="_blank" href="/search/%E6%9C%AC%E5%9C%B0%E6%A8%A1%E5%9E%8B/1.htm">本地模型</a><a class="tag" taget="_blank" href="/search/AI/1.htm">AI</a>
                        <div>零基础实践本地推理模型基本应用:基于llama_cpp的本地模型调用。本文先安装llama_cpppython库,再编写程序,利用其调用llama-2-7b-chat.Q4_K_M.ggu模型。背景llama_cpp是一个基于C++的高性能库(llama.cpp)的Python绑定,支持在CPU或GPU上高效运行LLaMA及其衍生模型(如LLaMA2),并通过量化技术(如GGUF格式)优化内存使用</div>
                    </li>
                    <li><a href="/article/1899282415726161920.htm"
                           title="python实现查找满足条件的数字" target="_blank">python实现查找满足条件的数字</a>
                        <span class="text-muted">qq_恰同学少年</span>
<a class="tag" taget="_blank" href="/search/python/1.htm">python</a>
                        <div>问题:一个四位数,知道其前两位和后两位分别相等,并且这个数还是一个平方数,求出这个数。一个四位数,范围只能是1000~9999,前两位和后两位分别相等,也就是说,它的结构应该是aabb。最后,这个数是一个平方数。有的小伙伴可能不知道啥叫平方数,暂且解释下,所谓的平方数就是指该数等于一个整数的平方。比如3的平方是9,那么我们就说9是个平方数。第一步,这是个四位数,前两位和后两位分别相等,我们将满足条</div>
                    </li>
                    <li><a href="/article/1899282037689348096.htm"
                           title="python中常用的内置模块举例(入门级整理)" target="_blank">python中常用的内置模块举例(入门级整理)</a>
                        <span class="text-muted">qq_恰同学少年</span>
<a class="tag" taget="_blank" href="/search/python/1.htm">python</a>
                        <div>python对于初学者可以说是十分友好的一门编程语言,不仅语法简单,而且它自身还包含了十分丰富的第三方模块,我仅就将我自己常用的一些内置模块(自带的,无需安装)做一下简单的总结和介绍:1.turtleturtle,是python中比较好玩一个模块,它有一个专有名称“海龟作图”,光看名字就应该能够猜到它是用来干嘛的,没错,就是来画图的,它可以通过某些语句来控制一个点在白板上的运动轨迹,它在白板上走过</div>
                    </li>
                    <li><a href="/article/1899279014040760320.htm"
                           title="QPython双核攻略:从零基础到AI开发,你的手机就是全栈训练营" target="_blank">QPython双核攻略:从零基础到AI开发,你的手机就是全栈训练营</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/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a><a class="tag" taget="_blank" href="/search/%E9%9D%92%E5%B0%91%E5%B9%B4%E7%BC%96%E7%A8%8B/1.htm">青少年编程</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a>
                        <div>主题一:《编程小白必看!在手机上种下你的第一行代码》✨北京优趣天下信息技术有限公司重磅出品我们比谁都清楚:✔️86%的初学者因环境配置放弃编程✔️72%的上班族只有碎片化学习时间✔️95%的自学者需要即时答疑支持为什么QPython成为2025现象级学习工具?▸全栈开发环境:解释器+编辑器+控制台三合一▸AI导师常驻:集成DeepSeek代码助手(支持中英双语提问)▸极速学习路径:Q派课程7天完成</div>
                    </li>
                    <li><a href="/article/1899279014544076800.htm"
                           title="Python学习指南:系统化路径 + 避坑建议" target="_blank">Python学习指南:系统化路径 + 避坑建议</a>
                        <span class="text-muted">程之编</span>
<a class="tag" taget="_blank" href="/search/Python%E5%85%A8%E6%A0%88%E9%80%9A%E5%85%B3%E7%A7%98%E7%B1%8D/1.htm">Python全栈通关秘籍</a><a class="tag" taget="_blank" href="/search/%E9%9D%92%E5%B0%91%E5%B9%B4%E7%BC%96%E7%A8%8B/1.htm">青少年编程</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><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/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0/1.htm">机器学习</a>
                        <div>新手小白学习编程就像搭积木——需要从基础开始,逐步构建知识体系。以下是为你量身定制的Python学习路径,帮你告别杂乱,高效入门!一、学习前的关键认知明确目标:想用Python做什么?数据分析(如Excel自动化、可视化)Web开发(如搭建网站)人工智能(如机器学习)自动化办公(如处理文件、邮件)目标不同,后续学习侧重点不同(但基础通用)。避免误区:❌只看教程不写代码✅边学边动手,哪怕抄代码也要运</div>
                    </li>
                    <li><a href="/article/1899277120757100544.htm"
                           title="【Python代码练习(简单应用)】" target="_blank">【Python代码练习(简单应用)】</a>
                        <span class="text-muted">9...</span>
<a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E6%B1%87%E7%BC%96/1.htm">汇编</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a><a class="tag" taget="_blank" href="/search/dreamweaver/1.htm">dreamweaver</a>
                        <div>一、Python列表添加与删除元素:append()。在列表末尾添加新的格式元素添加格式:list.append(元素)删除格式:list.remove(元素)例如:#给出代码listA=['水煮千丝','平板豆腐','白烧饭','香菇青菜','西红柿鸡蛋汤']listA._________("红烧肉")listA._________("水煮千丝")print(listA)将“红烧肉”放入列表中,</div>
                    </li>
                    <li><a href="/article/1899275732790603776.htm"
                           title="统信uos20:利用docker部署python+jupyterlab开发环境" target="_blank">统信uos20:利用docker部署python+jupyterlab开发环境</a>
                        <span class="text-muted">阆遤</span>
<a class="tag" taget="_blank" href="/search/docker/1.htm">docker</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/jupyter/1.htm">jupyter</a><a class="tag" taget="_blank" href="/search/github/1.htm">github</a><a class="tag" taget="_blank" href="/search/actions/1.htm">actions</a><a class="tag" taget="_blank" href="/search/workflow/1.htm">workflow</a><a class="tag" taget="_blank" href="/search/%E7%BB%9F%E4%BF%A1uos20/1.htm">统信uos20</a>
                        <div>很多统信uos20计算机没有联网安装python开发环境的条件,但是工作中需要对数据进行分析处理,因而产生了离线部署python开发环境的想法。我首先下载了python3.11的源代码包,在uos中编译居然正常通过。但后续的麻烦来了:需要安装的库没法安装。尝试了一天,最终放弃。改用Docker方式部署,理由就不多解释了。一、在uos中安装docker。我的系统是uos20linux4.19.0-a</div>
                    </li>
                    <li><a href="/article/1899275354716041216.htm"
                           title="第五周作业——第十章动手试一试" target="_blank">第五周作业——第十章动手试一试</a>
                        <span class="text-muted">hongsqi</span>

                        <div>10-1Python学习笔记学习笔记:在文本编辑器中新建一个文件,写几句话来总结一下你至此学到的Python知识,其中每一行都以“InPythonyoucan”打头。将这个文件命名为learning_python.txt,并将其存储到为完成本章练习而编写的程序所在的目录中。编写一个程序,它读取这个文件,并将你所写的内容打印三次:第一次打印时读取整个文件;第二次打印时遍历文件对象;第三次打印时将各行</div>
                    </li>
                    <li><a href="/article/1899272955758702592.htm"
                           title="统信UOS下达梦数据库启动图形界面应用工具monitor报JAVA相关错:An error has occurred. See the log file" target="_blank">统信UOS下达梦数据库启动图形界面应用工具monitor报JAVA相关错:An error has occurred. See the log file</a>
                        <span class="text-muted">LaoYuanPython</span>
<a class="tag" taget="_blank" href="/search/%E8%80%81%E7%8C%BFPython/1.htm">老猿Python</a><a class="tag" taget="_blank" href="/search/%E5%9B%BD%E4%BA%A7%E4%BF%A1%E5%88%9B%E4%B9%8B%E5%85%89/1.htm">国产信创之光</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E8%BE%BE%E6%A2%A6%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">达梦数据库</a><a class="tag" taget="_blank" href="/search/%E7%BB%9F%E4%BF%A1UOS%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F/1.htm">统信UOS操作系统</a><a class="tag" taget="_blank" href="/search/JDK/1.htm">JDK</a><a class="tag" taget="_blank" href="/search/%E5%9B%BE%E5%BD%A2%E5%BA%94%E7%94%A8%E6%8A%A5%E9%94%99/1.htm">图形应用报错</a>
                        <div>☞░前往老猿Python博客░https://blog.csdn.net/LaoYuanPython一、前言在博文《基于飞腾2000CPU+浪潮电脑+统信UOS安装达梦数据库详解https://blog.csdn.net/LaoYuanPython/article/details/143258863》中介绍了基于飞腾2000CPU+浪潮电脑+统信UOS安装达梦数据库的详细过程,并且安装完毕之后通过</div>
                    </li>
                    <li><a href="/article/1899272325086375936.htm"
                           title="整理一下arcGis desktop版本软件, 从入门到精通需要学习的知识点" target="_blank">整理一下arcGis desktop版本软件, 从入门到精通需要学习的知识点</a>
                        <span class="text-muted">AnalogElectronic</span>
<a class="tag" taget="_blank" href="/search/arcgis/1.htm">arcgis</a><a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0/1.htm">学习</a>
                        <div>整理一下arcGisdesktop版本软件,从入门到精通需要学习的知识点以下是一份关于ArcGISDesktop从入门到精通的学习知识点整理:一、软件初认识与基础操作软件初认识:了解ArcGISDesktop的界面布局,包括内容列表、ArcToolbox工具箱、结果窗口、地图窗口、目录窗口、搜索窗口、python编程窗口以及其他常用工具条等。数据添加与管理:掌握通过不同方式添加数据,如图层列表右键</div>
                    </li>
                    <li><a href="/article/1899270812356112384.htm"
                           title="动态规划双剑合璧:C++与Python征服洛谷三大经典DP问题" target="_blank">动态规划双剑合璧:C++与Python征服洛谷三大经典DP问题</a>
                        <span class="text-muted">三流搬砖艺术家</span>
<a class="tag" taget="_blank" href="/search/%E5%8A%A8%E6%80%81%E8%A7%84%E5%88%92/1.htm">动态规划</a><a class="tag" taget="_blank" href="/search/c%2B%2B/1.htm">c++</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a>
                        <div>动态规划核心思想状态定义→转移方程→边界处理→时空优化本文精选洛谷动态规划题单中三大经典问题,通过C++与Python双语言对比实现,彻底掌握DP精髓!题目一:P1048采药(01背包模板)题目描述在限定时间T内采集草药,每株草药有采集时间time[i]和价值value[i],求最大总价值。解题思路状态定义:dp[j]表示时间j能获得的最大价值转移方程:dp[j]=max(dp[j],dp[j-t</div>
                    </li>
                    <li><a href="/article/1899270812926537728.htm"
                           title="Python机器学习实战:构建序列到序列(Seq2Seq)模型处理翻译任务" target="_blank">Python机器学习实战:构建序列到序列(Seq2Seq)模型处理翻译任务</a>
                        <span class="text-muted">AGI大模型与大数据研究院</span>
<a class="tag" taget="_blank" href="/search/%E7%A8%8B%E5%BA%8F%E5%91%98%E6%8F%90%E5%8D%87%E8%87%AA%E6%88%91/1.htm">程序员提升自我</a><a class="tag" taget="_blank" href="/search/%E7%A1%85%E5%9F%BA%E8%AE%A1%E7%AE%97/1.htm">硅基计算</a><a class="tag" taget="_blank" href="/search/%E7%A2%B3%E5%9F%BA%E8%AE%A1%E7%AE%97/1.htm">碳基计算</a><a class="tag" taget="_blank" href="/search/%E8%AE%A4%E7%9F%A5%E8%AE%A1%E7%AE%97/1.htm">认知计算</a><a class="tag" taget="_blank" href="/search/%E7%94%9F%E7%89%A9%E8%AE%A1%E7%AE%97/1.htm">生物计算</a><a class="tag" taget="_blank" href="/search/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/1.htm">深度学习</a><a class="tag" taget="_blank" href="/search/%E7%A5%9E%E7%BB%8F%E7%BD%91%E7%BB%9C/1.htm">神经网络</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/AIGC/1.htm">AIGC</a><a class="tag" taget="_blank" href="/search/AGI/1.htm">AGI</a><a class="tag" taget="_blank" href="/search/LLM/1.htm">LLM</a><a class="tag" taget="_blank" href="/search/Java/1.htm">Java</a><a class="tag" taget="_blank" href="/search/Python/1.htm">Python</a><a class="tag" taget="_blank" href="/search/%E6%9E%B6%E6%9E%84%E8%AE%BE%E8%AE%A1/1.htm">架构设计</a><a class="tag" taget="_blank" href="/search/Agent/1.htm">Agent</a><a class="tag" taget="_blank" href="/search/%E7%A8%8B%E5%BA%8F%E5%91%98%E5%AE%9E%E7%8E%B0%E8%B4%A2%E5%AF%8C%E8%87%AA%E7%94%B1/1.htm">程序员实现财富自由</a>
                        <div>Python机器学习实战:构建序列到序列(Seq2Seq)模型处理翻译任务1.背景介绍1.1问题的由来翻译是跨语言沟通的重要桥梁,随着全球化进程的加速,翻译需求日益增长。传统的机器翻译方法主要依赖于规则和统计方法,如基于短语的翻译、基于统计的机器翻译等。然而,这些方法难以处理复杂的语言现象,翻译质量参差不齐。近年来,随着深度学习技术的快速发展,基于神经网络序列到序列(Sequence-to-Seq</div>
                    </li>
                    <li><a href="/article/1899269930210095104.htm"
                           title="20个简单的python代码练习" target="_blank">20个简单的python代码练习</a>
                        <span class="text-muted">qq_恰同学少年</span>
<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>下面整理了20个简单的python代码练习,供大家学习交流使用,轻易上手,复制下来就能用!!!废话不多说,直奔主题1.输入一个不超过5位的正整数,输出其逆数。例如输入12345,输出应为54321。a=input('请输入一个不超过5位的正整数:')print('其逆数为:',a[::-1])注:该代码使用了列表的切片和反转操作,首先将这个数的每个位上的数字存储到一个列表中,然后通过列表的反转来得</div>
                    </li>
                    <li><a href="/article/1899269803420479488.htm"
                           title="Python第十六课:深度学习入门 | 神经网络解密" target="_blank">Python第十六课:深度学习入门 | 神经网络解密</a>
                        <span class="text-muted">程之编</span>
<a class="tag" taget="_blank" href="/search/Python%E5%85%A8%E6%A0%88%E9%80%9A%E5%85%B3%E7%A7%98%E7%B1%8D/1.htm">Python全栈通关秘籍</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E7%A5%9E%E7%BB%8F%E7%BD%91%E7%BB%9C/1.htm">神经网络</a><a class="tag" taget="_blank" href="/search/%E9%9D%92%E5%B0%91%E5%B9%B4%E7%BC%96%E7%A8%8B/1.htm">青少年编程</a>
                        <div>本节目标理解生物神经元与人工神经网络的映射关系掌握激活函数与损失函数的核心作用使用Keras构建手写数字识别模型可视化神经网络的训练过程掌握防止过拟合的基础策略一、神经网络基础(大脑的数字化仿生)1.神经元对比生物神经元人工神经元树突接收信号输入层接收特征数据细胞体整合信号加权求和(∑(权重×输入)+偏置)轴突传递电信号激活函数处理输出2.核心组件解析激活函数:神经元的"开关"(如ReLU:max</div>
                    </li>
                    <li><a href="/article/1899266270868598784.htm"
                           title="通过 Ollama 本地部署 DeepSeek-r1:1.5b 模型后,用 Python 调用推理并生成基于 pytest + PO 设计模式的 Playwright 自动化测试文件" target="_blank">通过 Ollama 本地部署 DeepSeek-r1:1.5b 模型后,用 Python 调用推理并生成基于 pytest + PO 设计模式的 Playwright 自动化测试文件</a>
                        <span class="text-muted">Python测试之道</span>
<a class="tag" taget="_blank" href="/search/%E6%B5%8B%E8%AF%95%E6%8F%90%E6%95%88/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/pytest/1.htm">pytest</a><a class="tag" taget="_blank" href="/search/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/1.htm">设计模式</a>
                        <div>以下是完整的实现步骤和代码示例,详细说明了如何通过Python调用本地部署的DeepSeek-r1:1.5b模型,将功能测试用例转换为适合pytest和PageObject(PO)设计模式的Playwright自动化测试脚本。一、前提条件DeepSeek模型本地部署通过Ollama部署DeepSeek-r1:1.5b模型。Ollama提供的本地推理服务默认可通过HTTPAPI访问,地址通常为:ht</div>
                    </li>
                    <li><a href="/article/1899263498148442112.htm"
                           title="【UI自动化】Selenium库中使用By类元素定位方法" target="_blank">【UI自动化】Selenium库中使用By类元素定位方法</a>
                        <span class="text-muted">搞不来测试的摄影狮</span>
<a class="tag" taget="_blank" href="/search/%E8%BD%AF%E4%BB%B6%E6%B5%8B%E8%AF%95/1.htm">软件测试</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/selenium/1.htm">selenium</a><a class="tag" taget="_blank" href="/search/%E8%87%AA%E5%8A%A8%E5%8C%96/1.htm">自动化</a>
                        <div>使用By类,首先需要在Python中导入该模块:fromselenium.webdriver.common.byimportBy1.通过元素的ID属性来定位driver.find_element(By.ID,'kw')如下图,我们需要定位百度的输入框。首先选中定位工具,然后选中输入框。我们可以看到该元素id的值为:"kw"2.通过元素的NAME属性来定位driver.find_element(By</div>
                    </li>
                    <li><a href="/article/1899260220685742080.htm"
                           title="DeepSeek + Cline:编程如何加速引擎" target="_blank">DeepSeek + Cline:编程如何加速引擎</a>
                        <span class="text-muted">meisongqing</span>
<a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a>
                        <div>DeepSeek与Cline的结合为编程工作流提供了显著的加速能力,这种组合通过AI辅助规划、代码生成与优化、实时调试等功能,大幅提升开发效率。以下是具体实现方式及技术要点:一、智能规划与代码生成问题分析与规划(Plan模式)DeepSeek-R1模型擅长处理复杂逻辑推理,开发者可在Cline的Plan模式下用自然语言描述需求(如“用Python实现数据清洗并计算平均值”)。DeepSeek会根据</div>
                    </li>
                    <li><a href="/article/1899256819289747456.htm"
                           title="Python 变量起名全攻略:新手避坑与大神指南" target="_blank">Python 变量起名全攻略:新手避坑与大神指南</a>
                        <span class="text-muted">科雷learning</span>
<a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0AI/1.htm">学习AI</a><a class="tag" taget="_blank" href="/search/python%E7%BC%96%E7%A8%8B/1.htm">python编程</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>学习AI科雷learning2025年03月10日22:19江苏一、引言:变量起名的“玄学”难题在Python编程的世界里,变量命名看似简单,实则暗藏玄机,常常让新手们踩坑不断。本文将带你深入了解Python变量命名规则,助你从新手小白变身命名大神。二、基础规则:保命口诀要牢记小白的困惑小白:(举着写满报错的代码)大神快看!我就写了个3D效果=True,Python竟然说我语法错误?专家的解答专家</div>
                    </li>
                    <li><a href="/article/1899255177815322624.htm"
                           title="聚类分析|k-means聚类方法及其Python实现" target="_blank">聚类分析|k-means聚类方法及其Python实现</a>
                        <span class="text-muted">皖山文武</span>
<a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E6%8C%96%E6%8E%98/1.htm">数据挖掘</a><a class="tag" taget="_blank" href="/search/%E5%95%86%E5%8A%A1%E6%99%BA%E8%83%BD/1.htm">商务智能</a><a class="tag" taget="_blank" href="/search/kmeans/1.htm">kmeans</a><a class="tag" taget="_blank" href="/search/%E8%81%9A%E7%B1%BB/1.htm">聚类</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E6%8C%96%E6%8E%98/1.htm">数据挖掘</a><a class="tag" taget="_blank" href="/search/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0/1.htm">机器学习</a>
                        <div>k-means聚类方法及其Python实现0.k-means算法简介1.k-means算法工作原理2.k-means算法流程3.k–means算法的Python实现0.k-means算法简介k-means算法由MacQueen在1967年提出。是一种经典的基于划分的聚类方法。划分方法(PartitioningMethod)是基于距离判断样本相似度,通过不断迭代将含有多个样本的数据集划分成若干个簇,</div>
                    </li>
                    <li><a href="/article/1899254799753342976.htm"
                           title="python调用ollama本地部署的deepseek" target="_blank">python调用ollama本地部署的deepseek</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/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a>
                        <div>说明在本地主机上调用局域网内使用ollama部署好的deepseek。之前的文章中已经部署好,并调试通的网络,现在需要使用python能调用deepseek的API,便于后续的模型探索和应用开发。但是百度了很多,没一个能用的,各种无脑的复制粘贴,最后还是老实得去看官方文档,还是自己记录一下比较好。正文使用ollama的pythonlib包进行deepseek的调用。pypyi地址:ollama·P</div>
                    </li>
                    <li><a href="/article/1899244969500143616.htm"
                           title="Dubbo应用接入" target="_blank">Dubbo应用接入</a>
                        <span class="text-muted">weixin_34281477</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a>
                        <div>2019独角兽企业重金招聘Python工程师标准>>>一、应用配置1、pom文件引入下面的jar包com.niwodai.infdubbo-cat-extend3.0.02、如果要对全局dubbo服务加监控,增加如下filter:服务提供方:服务消费方:如果只需要对单个服务加监控,增加如下filter:服务提供方:服务消费方:3、配置disconf开关,一个应用只需要配置一次。Disconf监控开</div>
                    </li>
                    <li><a href="/article/1899241936246599680.htm"
                           title="Python通过RS485串口控制码垛机器人" target="_blank">Python通过RS485串口控制码垛机器人</a>
                        <span class="text-muted">mosquito_lover1</span>
<a class="tag" taget="_blank" href="/search/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/1.htm">计算机视觉</a><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/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E6%9C%BA%E5%99%A8%E4%BA%BA/1.htm">机器人</a>
                        <div>先看代码,再看后面的说明importserialimporttimeclassPalletizingRobot:def__init__(self,port,baudrate=9600,timeout=1):self.port=portself.baudrate=baudrateself.timeout=timeoutself.serial_conn=Nonedefconnect(self):"""</div>
                    </li>
                    <li><a href="/article/1899230212273532928.htm"
                           title="Python学习总结" target="_blank">Python学习总结</a>
                        <span class="text-muted">serve the people</span>
<a class="tag" taget="_blank" href="/search/%E5%B7%A8%E4%BA%BA%E7%9A%84%E8%82%A9%E8%86%80/1.htm">巨人的肩膀</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>第一个python程序print("HelloWorld")#缩进一般4个空格键或者1个tab键,但是所有代码块语句必须是相同的缩进,这个必须严格执行,不同的缩进会导致程序不能运行,不能混用空格和tabifTrue:print("True")else:print("False")python注释符单行注释(行注释)#print("HelloWorld")多行注释(块注释)'''print("Hel</div>
                    </li>
                    <li><a href="/article/1899228194607788032.htm"
                           title="python贪心算法几个经典例子_贪心算法经典例子" target="_blank">python贪心算法几个经典例子_贪心算法经典例子</a>
                        <span class="text-muted">weixin_39637979</span>

                        <div>一、定义什么是贪心算法呢?所谓贪心算法是指,在对问题求解时,总是做出在当前看来最好的选择。也就是说,不从整体最优解出发来考虑,它所做出的仅是在某种意义上的局部最优解。贪心算法不是对所有问题都能得到整体最优解,但对范围相当广泛的许多问题都能产生整体最优解或整体最优解的近似解。贪心算法的基本思路如下:1.建立数学模型来描述问题。2.把求解的问题分成若干个子问题。3.对每个子问题求解,得到每个子问题的局</div>
                    </li>
                                <li><a href="/article/61.htm"
                                       title="Enum用法" target="_blank">Enum用法</a>
                                    <span class="text-muted">不懂事的小屁孩</span>
<a class="tag" taget="_blank" href="/search/enum/1.htm">enum</a>
                                    <div>以前的时候知道enum,但是真心不怎么用,在实际开发中,经常会用到以下代码: 
 
protected final static String XJ = "XJ";
protected final static String YHK = "YHK";
protected final static String PQ = "PQ";
</div>
                                </li>
                                <li><a href="/article/188.htm"
                                       title="【Spark九十七】RDD API之aggregateByKey" target="_blank">【Spark九十七】RDD API之aggregateByKey</a>
                                    <span class="text-muted">bit1129</span>
<a class="tag" taget="_blank" href="/search/spark/1.htm">spark</a>
                                    <div>1. aggregateByKey的运行机制 
  
  /**
   * Aggregate the values of each key, using given combine functions and a neutral "zero value".
   * This function can return a different result type</div>
                                </li>
                                <li><a href="/article/315.htm"
                                       title="hive创建表是报错: Specified key was too long; max key length is 767 bytes" target="_blank">hive创建表是报错: Specified key was too long; max key length is 767 bytes</a>
                                    <span class="text-muted">daizj</span>
<a class="tag" taget="_blank" href="/search/hive/1.htm">hive</a>
                                    <div>今天在hive客户端创建表时报错,具体操作如下 
  
hive> create table test2(id string); 
FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. MetaException(message:javax.jdo.JDODataSto</div>
                                </li>
                                <li><a href="/article/442.htm"
                                       title="Map 与 JavaBean之间的转换" target="_blank">Map 与 JavaBean之间的转换</a>
                                    <span class="text-muted">周凡杨</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E8%87%AA%E7%9C%81/1.htm">自省</a><a class="tag" taget="_blank" href="/search/%E8%BD%AC%E6%8D%A2/1.htm">转换</a><a class="tag" taget="_blank" href="/search/%E5%8F%8D%E5%B0%84/1.htm">反射</a>
                                    <div>   
最近项目里需要一个工具类,它的功能是传入一个Map后可以返回一个JavaBean对象。很喜欢写这样的Java服务,首先我想到的是要通过Java 的反射去实现匿名类的方法调用,这样才可以把Map里的值set 到JavaBean里。其实这里用Java的自省会更方便,下面两个方法就是一个通过反射,一个通过自省来实现本功能。 
1:JavaBean类 
 
1 &nb</div>
                                </li>
                                <li><a href="/article/569.htm"
                                       title="java连接ftp下载" target="_blank">java连接ftp下载</a>
                                    <span class="text-muted">g21121</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a>
                                    <div>有的时候需要用到java连接ftp服务器下载,上传一些操作,下面写了一个小例子。 
/** ftp服务器地址 */
private String ftpHost;
/** ftp服务器用户名 */
private String ftpName;
/** ftp服务器密码 */
private String ftpPass;
/** ftp根目录 */
private String f</div>
                                </li>
                                <li><a href="/article/696.htm"
                                       title="web报表工具FineReport使用中遇到的常见报错及解决办法(二)" target="_blank">web报表工具FineReport使用中遇到的常见报错及解决办法(二)</a>
                                    <span class="text-muted">老A不折腾</span>
<a class="tag" taget="_blank" href="/search/finereport/1.htm">finereport</a><a class="tag" taget="_blank" href="/search/web%E6%8A%A5%E8%A1%A8/1.htm">web报表</a><a class="tag" taget="_blank" href="/search/java%E6%8A%A5%E8%A1%A8/1.htm">java报表</a><a class="tag" taget="_blank" href="/search/%E6%80%BB%E7%BB%93/1.htm">总结</a>
                                    <div>  
抛砖引玉,希望大家能把自己整理的问题及解决方法晾出来,Mark一下,利人利己。 
  
出现问题先搜一下文档上有没有,再看看度娘有没有,再看看论坛有没有。有报错要看日志。下面简单罗列下常见的问题,大多文档上都有提到的。 
  
1、没有返回数据集: 
在存储过程中的操作语句之前加上set nocount on 或者在数据集exec调用存储过程的前面加上这句。当S</div>
                                </li>
                                <li><a href="/article/823.htm"
                                       title="linux 系统cpu 内存等信息查看" target="_blank">linux 系统cpu 内存等信息查看</a>
                                    <span class="text-muted">墙头上一根草</span>
<a class="tag" taget="_blank" href="/search/cpu/1.htm">cpu</a><a class="tag" taget="_blank" href="/search/%E5%86%85%E5%AD%98/1.htm">内存</a><a class="tag" taget="_blank" href="/search/liunx/1.htm">liunx</a>
                                    <div>1 查看CPU 
  1.1 查看CPU个数 
  # cat /proc/cpuinfo | grep "physical id" | uniq | wc -l 
  2 
  **uniq命令:删除重复行;wc –l命令:统计行数** 
  1.2 查看CPU核数 
  # cat /proc/cpuinfo | grep "cpu cores" | u</div>
                                </li>
                                <li><a href="/article/950.htm"
                                       title="Spring中的AOP" target="_blank">Spring中的AOP</a>
                                    <span class="text-muted">aijuans</span>
<a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a><a class="tag" taget="_blank" href="/search/AOP/1.htm">AOP</a>
                                    <div>   
Spring中的AOP  
Written by Tony Jiang @ 2012-1-18 (转)何为AOP 
AOP,面向切面编程。 
在不改动代码的前提下,灵活的在现有代码的执行顺序前后,添加进新规机能。 
来一个简单的Sample: 
目标类:    
[java]  
view plain 
copy 
print 
?     
 
 package&nb</div>
                                </li>
                                <li><a href="/article/1077.htm"
                                       title="placeholder(HTML 5) IE 兼容插件" target="_blank">placeholder(HTML 5) IE 兼容插件</a>
                                    <span class="text-muted">alxw4616</span>
<a class="tag" taget="_blank" href="/search/JavaScript/1.htm">JavaScript</a><a class="tag" taget="_blank" href="/search/jquery+jQuery%E6%8F%92%E4%BB%B6/1.htm">jquery jQuery插件</a>
                                    <div>placeholder 这个属性被越来越频繁的使用.
但为做HTML 5 特性IE没能实现这东西.
以下的jQuery插件就是用来在IE上实现该属性的. 

/**
 * [placeholder(HTML 5) IE 实现.IE9以下通过测试.]
 * v 1.0 by oTwo 2014年7月31日 11:45:29
 */
$.fn.placeholder = function</div>
                                </li>
                                <li><a href="/article/1204.htm"
                                       title="Object类,值域,泛型等总结(适合有基础的人看)" target="_blank">Object类,值域,泛型等总结(适合有基础的人看)</a>
                                    <span class="text-muted">百合不是茶</span>
<a class="tag" taget="_blank" href="/search/%E6%B3%9B%E5%9E%8B%E7%9A%84%E7%BB%A7%E6%89%BF%E5%92%8C%E9%80%9A%E9%85%8D%E7%AC%A6/1.htm">泛型的继承和通配符</a><a class="tag" taget="_blank" href="/search/%E5%8F%98%E9%87%8F%E7%9A%84%E5%80%BC%E5%9F%9F/1.htm">变量的值域</a><a class="tag" taget="_blank" href="/search/Object%E7%B1%BB%E8%BD%AC%E6%8D%A2/1.htm">Object类转换</a>
                                    <div>java的作用域在编程的时候经常会遇到,而我经常会搞不清楚这个 
问题,所以在家的这几天回忆一下过去不知道的每个小知识点 
  
变量的值域; 
  
package 基础;

/**
 * 作用域的范围
 * 
 * @author Administrator
 * 
 */
public class zuoyongyu {
public static vo</div>
                                </li>
                                <li><a href="/article/1331.htm"
                                       title="JDK1.5 Condition接口" target="_blank">JDK1.5 Condition接口</a>
                                    <span class="text-muted">bijian1013</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/thread/1.htm">thread</a><a class="tag" taget="_blank" href="/search/Condition/1.htm">Condition</a><a class="tag" taget="_blank" href="/search/java%E5%A4%9A%E7%BA%BF%E7%A8%8B/1.htm">java多线程</a>
                                    <div>Condition 将 Object 监视器方法(wait、notify和 notifyAll)分解成截然不同的对象,以便通过将这些对象与任意 Lock 实现组合使用,为每个对象提供多个等待 set (wait-set)。其中,Lock 替代了 synchronized 方法和语句的使用,Condition 替代了 Object 监视器方法的使用。 
条件(也称为条件队列或条件变量)为线程提供了一</div>
                                </li>
                                <li><a href="/article/1458.htm"
                                       title="开源中国OSC源创会记录" target="_blank">开源中国OSC源创会记录</a>
                                    <span class="text-muted">bijian1013</span>
<a class="tag" taget="_blank" href="/search/hadoop/1.htm">hadoop</a><a class="tag" taget="_blank" href="/search/spark/1.htm">spark</a><a class="tag" taget="_blank" href="/search/MemSQL/1.htm">MemSQL</a>
                                    <div>一.Strata+Hadoop World(SHW)大会 
        是全世界最大的大数据大会之一。SHW大会为各种技术提供了深度交流的机会,还会看到最领先的大数据技术、最广泛的应用场景、最有趣的用例教学以及最全面的大数据行业和趋势探讨。        
  
二.Hadoop 
  &nbs</div>
                                </li>
                                <li><a href="/article/1585.htm"
                                       title="【Java范型七】范型消除" target="_blank">【Java范型七】范型消除</a>
                                    <span class="text-muted">bit1129</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a>
                                    <div>范型是Java1.5引入的语言特性,它是编译时的一个语法现象,也就是说,对于一个类,不管是范型类还是非范型类,编译得到的字节码是一样的,差别仅在于通过范型这种语法来进行编译时的类型检查,在运行时是没有范型或者类型参数这个说法的。 
范型跟反射刚好相反,反射是一种运行时行为,所以编译时不能访问的变量或者方法(比如private),在运行时通过反射是可以访问的,也就是说,可见性也是一种编译时的行为,在</div>
                                </li>
                                <li><a href="/article/1712.htm"
                                       title="【Spark九十四】spark-sql工具的使用" target="_blank">【Spark九十四】spark-sql工具的使用</a>
                                    <span class="text-muted">bit1129</span>
<a class="tag" taget="_blank" href="/search/spark/1.htm">spark</a>
                                    <div>spark-sql是Spark bin目录下的一个可执行脚本,它的目的是通过这个脚本执行Hive的命令,即原来通过 
hive>输入的指令可以通过spark-sql>输入的指令来完成。 
spark-sql可以使用内置的Hive metadata-store,也可以使用已经独立安装的Hive的metadata store 
  
关于Hive build into Spark</div>
                                </li>
                                <li><a href="/article/1839.htm"
                                       title="js做的各种倒计时" target="_blank">js做的各种倒计时</a>
                                    <span class="text-muted">ronin47</span>
<a class="tag" taget="_blank" href="/search/js+%E5%80%92%E8%AE%A1%E6%97%B6/1.htm">js 倒计时</a>
                                    <div> 
 第一种:精确到秒的javascript倒计时代码   
    
 HTML代码:   
 <form name="form1">   
 <div align="center" align="middle"</div>
                                </li>
                                <li><a href="/article/1966.htm"
                                       title="java-37.有n 个长为m+1 的字符串,如果某个字符串的最后m 个字符与某个字符串的前m 个字符匹配,则两个字符串可以联接" target="_blank">java-37.有n 个长为m+1 的字符串,如果某个字符串的最后m 个字符与某个字符串的前m 个字符匹配,则两个字符串可以联接</a>
                                    <span class="text-muted">bylijinnan</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a>
                                    <div>
public class MaxCatenate {  
  
	/*
	 * Q.37 有n 个长为m+1 的字符串,如果某个字符串的最后m 个字符与某个字符串的前m 个字符匹配,则两个字符串可以联接,
	 * 问这n 个字符串最多可以连成一个多长的字符串,如果出现循环,则返回错误。
	 */
    public static void main(String[] args){</div>
                                </li>
                                <li><a href="/article/2093.htm"
                                       title="mongoDB安装" target="_blank">mongoDB安装</a>
                                    <span class="text-muted">开窍的石头</span>
<a class="tag" taget="_blank" href="/search/mongodb%E5%AE%89%E8%A3%85+%E5%9F%BA%E6%9C%AC%E6%93%8D%E4%BD%9C/1.htm">mongodb安装 基本操作</a>
                                    <div>mongoDB的安装 
   
      1:mongoDB下载   https://www.mongodb.org/downloads   
      2:下载mongoDB下载后解压 
    </div>
                                </li>
                                <li><a href="/article/2220.htm"
                                       title="[开源项目]引擎的关键意义" target="_blank">[开源项目]引擎的关键意义</a>
                                    <span class="text-muted">comsci</span>
<a class="tag" taget="_blank" href="/search/%E5%BC%80%E6%BA%90%E9%A1%B9%E7%9B%AE/1.htm">开源项目</a>
                                    <div> 
 
     一个系统,最核心的东西就是引擎。。。。。 
 
      而要设计和制造出引擎,最关键的是要坚持。。。。。。 
 
      现在最先进的引擎技术,也是从莱特兄弟那里出现的,但是中间一直没有断过研发的 
   </div>
                                </li>
                                <li><a href="/article/2347.htm"
                                       title="软件度量的一些方法" target="_blank">软件度量的一些方法</a>
                                    <span class="text-muted">cuiyadll</span>
<a class="tag" taget="_blank" href="/search/%E6%96%B9%E6%B3%95/1.htm">方法</a>
                                    <div>软件度量的一些方法http://cuiyingfeng.blog.51cto.com/43841/6775/在前面我们已介绍了组成软件度量的几个方面。在这里我们将先给出关于这几个方面的一个纲要介绍。在后面我们还会作进一步具体的阐述。当我们不从高层次的概念级来看软件度量及其目标的时候,我们很容易把这些活动看成是不同而且毫不相干的。我们现在希望表明他们是怎样恰如其分地嵌入我们的框架的。也就是我们度量的</div>
                                </li>
                                <li><a href="/article/2474.htm"
                                       title="XSD中的targetNameSpace解释" target="_blank">XSD中的targetNameSpace解释</a>
                                    <span class="text-muted">darrenzhu</span>
<a class="tag" taget="_blank" href="/search/xml/1.htm">xml</a><a class="tag" taget="_blank" href="/search/namespace/1.htm">namespace</a><a class="tag" taget="_blank" href="/search/xsd/1.htm">xsd</a><a class="tag" taget="_blank" href="/search/targetnamespace/1.htm">targetnamespace</a>
                                    <div>参考链接:
http://blog.csdn.net/colin1014/article/details/357694 
xsd文件中定义了一个targetNameSpace后,其内部定义的元素,属性,类型等都属于该targetNameSpace,其自身或外部xsd文件使用这些元素,属性等都必须从定义的targetNameSpace中找: 
 
 
例如:以下xsd文件,就出现了该错误,即便是在一</div>
                                </li>
                                <li><a href="/article/2601.htm"
                                       title="什么是RAID0、RAID1、RAID0+1、RAID5,等磁盘阵列模式?" target="_blank">什么是RAID0、RAID1、RAID0+1、RAID5,等磁盘阵列模式?</a>
                                    <span class="text-muted">dcj3sjt126com</span>
<a class="tag" taget="_blank" href="/search/raid/1.htm">raid</a>
                                    <div>RAID 1又称为Mirror或Mirroring,它的宗旨是最大限度的保证用户数据的可用性和可修复性。 RAID 1的操作方式是把用户写入硬盘的数据百分之百地自动复制到另外一个硬盘上。由于对存储的数据进行百分之百的备份,在所有RAID级别中,RAID 1提供最高的数据安全保障。同样,由于数据的百分之百备份,备份数据占了总存储空间的一半,因而,Mirror的磁盘空间利用率低,存储成本高。 
Mir</div>
                                </li>
                                <li><a href="/article/2728.htm"
                                       title="yii2 restful web服务快速入门" target="_blank">yii2 restful web服务快速入门</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/yii2/1.htm">yii2</a>
                                    <div>快速入门 
Yii 提供了一整套用来简化实现 RESTful 风格的 Web Service 服务的 API。 特别是,Yii 支持以下关于 RESTful 风格的 API: 
 
 支持 Active Record 类的通用API的快速原型 
 涉及的响应格式(在默认情况下支持 JSON 和 XML) 
 支持可选输出字段的定制对象序列化 
 适当的格式的数据采集和验证错误 </div>
                                </li>
                                <li><a href="/article/2855.htm"
                                       title="MongoDB查询(3)——内嵌文档查询(七)" target="_blank">MongoDB查询(3)——内嵌文档查询(七)</a>
                                    <span class="text-muted">eksliang</span>
<a class="tag" taget="_blank" href="/search/MongoDB%E6%9F%A5%E8%AF%A2%E5%86%85%E5%B5%8C%E6%96%87%E6%A1%A3/1.htm">MongoDB查询内嵌文档</a><a class="tag" taget="_blank" href="/search/MongoDB%E6%9F%A5%E8%AF%A2%E5%86%85%E5%B5%8C%E6%95%B0%E7%BB%84/1.htm">MongoDB查询内嵌数组</a>
                                    <div>MongoDB查询内嵌文档 
转载请出自出处:http://eksliang.iteye.com/blog/2177301 一、概述 
       有两种方法可以查询内嵌文档:查询整个文档;针对键值对进行查询。这两种方式是不同的,下面我通过例子进行分别说明。 
  二、查询整个文档 
例如:有如下文档 
db.emp.insert({
	&qu</div>
                                </li>
                                <li><a href="/article/2982.htm"
                                       title="android4.4从系统图库无法加载图片的问题" target="_blank">android4.4从系统图库无法加载图片的问题</a>
                                    <span class="text-muted">gundumw100</span>
<a class="tag" taget="_blank" href="/search/android/1.htm">android</a>
                                    <div>典型的使用场景就是要设置一个头像,头像需要从系统图库或者拍照获得,在android4.4之前,我用的代码没问题,但是今天使用android4.4的时候突然发现不灵了。baidu了一圈,终于解决了。 
下面是解决方案: 
 

private String[] items = new String[] { "图库","拍照" };
		/* 头像名称 */</div>
                                </li>
                                <li><a href="/article/3109.htm"
                                       title="网页特效大全 jQuery等" target="_blank">网页特效大全 jQuery等</a>
                                    <span class="text-muted">ini</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><a class="tag" taget="_blank" href="/search/css/1.htm">css</a><a class="tag" taget="_blank" href="/search/html5/1.htm">html5</a><a class="tag" taget="_blank" href="/search/ini/1.htm">ini</a>
                                    <div>HTML5和CSS3知识和特效 
asp.net ajax jquery实例 
分享一个下雪的特效 
jQuery倾斜的动画导航菜单 
选美大赛示例 你会选谁 
jQuery实现HTML5时钟 
功能强大的滚动播放插件JQ-Slide 
万圣节快乐!!! 
向上弹出菜单jQuery插件 
htm5视差动画 
jquery将列表倒转顺序 
推荐一个jQuery分页插件 
jquery animate</div>
                                </li>
                                <li><a href="/article/3236.htm"
                                       title="swift objc_setAssociatedObject block(version1.2 xcode6.4)" target="_blank">swift objc_setAssociatedObject block(version1.2 xcode6.4)</a>
                                    <span class="text-muted">啸笑天</span>
<a class="tag" taget="_blank" href="/search/version/1.htm">version</a>
                                    <div>  
import UIKit

class LSObjectWrapper: NSObject {
    let value: ((barButton: UIButton?) -> Void)?
    
    init(value: (barButton: UIButton?) -> Void) {
        self.value = value
</div>
                                </li>
                                <li><a href="/article/3363.htm"
                                       title="Aegis 默认的 Xfire 绑定方式,将 XML 映射为 POJO" target="_blank">Aegis 默认的 Xfire 绑定方式,将 XML 映射为 POJO</a>
                                    <span class="text-muted">MagicMa_007</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/POJO/1.htm">POJO</a><a class="tag" taget="_blank" href="/search/xml/1.htm">xml</a><a class="tag" taget="_blank" href="/search/Aegis/1.htm">Aegis</a><a class="tag" taget="_blank" href="/search/xfire/1.htm">xfire</a>
                                    <div>      Aegis 是一个默认的 Xfire 绑定方式,它将 XML 映射为 POJO, 支持代码先行的开发.你开发服 务类与 POJO,它为你生成 XML schema/wsdl 
XML 和 注解映射概览 
      默认情况下,你的 POJO 类被是基于他们的名字与命名空间被序列化。如果</div>
                                </li>
                                <li><a href="/article/3490.htm"
                                       title="js get max value in (json) Array" target="_blank">js get max value in (json) Array</a>
                                    <span class="text-muted">qiaolevip</span>
<a class="tag" taget="_blank" href="/search/%E6%AF%8F%E5%A4%A9%E8%BF%9B%E6%AD%A5%E4%B8%80%E7%82%B9%E7%82%B9/1.htm">每天进步一点点</a><a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0%E6%B0%B8%E6%97%A0%E6%AD%A2%E5%A2%83/1.htm">学习永无止境</a><a class="tag" taget="_blank" href="/search/max/1.htm">max</a><a class="tag" taget="_blank" href="/search/%E7%BA%B5%E8%A7%82%E5%8D%83%E8%B1%A1/1.htm">纵观千象</a>
                                    <div>// Max value in Array
var arr = [1,2,3,5,3,2];Math.max.apply(null, arr); // 5


// Max value in Jaon Array
var arr = [{"x":"8/11/2009","y":0.026572007},{"x"</div>
                                </li>
                                <li><a href="/article/3617.htm"
                                       title="XMLhttpRequest 请求 XML,JSON ,POJO 数据" target="_blank">XMLhttpRequest 请求 XML,JSON ,POJO 数据</a>
                                    <span class="text-muted">Luob.</span>
<a class="tag" taget="_blank" href="/search/POJO/1.htm">POJO</a><a class="tag" taget="_blank" href="/search/json/1.htm">json</a><a class="tag" taget="_blank" href="/search/Ajax/1.htm">Ajax</a><a class="tag" taget="_blank" href="/search/xml/1.htm">xml</a><a class="tag" taget="_blank" href="/search/XMLhttpREquest/1.htm">XMLhttpREquest</a>
                                    <div>在使用XMlhttpRequest对象发送请求和响应之前,必须首先使用javaScript对象创建一个XMLHttpRquest对象。 
 

var xmlhttp;
function getXMLHttpRequest(){
  if(window.ActiveXObject){
    xmlhttp:new ActiveXObject("Microsoft.XMLHTTP</div>
                                </li>
                                <li><a href="/article/3744.htm"
                                       title="jquery" target="_blank">jquery</a>
                                    <span class="text-muted">wuai</span>
<a class="tag" taget="_blank" href="/search/jquery/1.htm">jquery</a>
                                    <div>以下防止文档在完全加载之前运行Jquery代码,否则会出现试图隐藏一个不存在的元素、获得未完全加载的图像的大小 等等 
 $(document).ready(function(){ 
 jquery代码; 
 }); 
 
<script type="text/javascript" src="c:/scripts/jquery-1.4.2.min.js&quo</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>