Python XPath语法完全指南:从基础到高级应用

Python XPath语法完全指南:从基础到高级应用

XPath(XML Path Language)是一种用于在XML和HTML文档中查找信息的语言,广泛应用于网页抓取、数据提取和自动化测试等领域。本文将全面介绍XPath的核心语法和高级用法,帮助您掌握这一强大的数据定位工具。

一、XPath基础语法

1.1 节点选择

XPath提供了多种节点选择方式:

  • /:从根节点开始的绝对路径(如/html/body/div)
  • //:全局搜索节点,不考虑位置(如//div匹配所有
    )
  • .:选择当前节点
  • ..:选择当前节点的父节点

1.2 通配符

  • *:匹配任意元素节点(如//book/*选择的所有子元素)
  • @*:匹配任何属性节点(如//div[@*]选择所有带属性的
    )
  • node():匹配任何类型的节点

二、属性与条件过滤

2.1 属性选择

  • @:选择属性(如//input[@id="search"]匹配id="search")
  • contains(@attr, "value"):模糊匹配属性值(如//a[contains(@class, "btn")])
  • starts-with(@attr, "value"):匹配属性前缀(如//a[starts-with(@href, "https://")])

2.2 谓语(条件过滤)

谓语用于进一步过滤节点,写在方括号[]中:

  • 按位置://ul/li[1](选择第一个
  • )
  • 按数值://book[price>35](选择价格大于35的)
  • 逻辑运算:and/or(如//div[@class="header" or @id="top"])

三、文本与函数操作

3.1 文本内容匹配

  • text():选择节点文本(如//h1[text()="标题"]精确匹配文本)
  • contains(text(), "关键词"):模糊匹配文本(如//p[contains(text(), "爬虫")])

3.2 常用函数

  • last():选择最后一个节点(如//li[last()])
  • position():按位置范围选择(如//div[position()<3]选前两个
    )
  • count():计算节点数量(如//div[count(p)>3]选择包含超过3个

    )

四、轴(Axis)定位

轴可以定义相对于当前节点的节点集:

4.1 家族关系轴

  • child:::子节点(默认轴,可省略,如/html/child::body)
  • parent:::父节点(如//a/parent::div)
  • following-sibling:::后续兄弟节点(如//li[1]/following-sibling::li)

4.2 范围轴

  • ancestor:::祖先节点(如//span/ancestor::div)
  • descendant:::后代节点(如//div/descendant::p)
  • preceding-sibling:::前驱兄弟节点(如//li[3]/preceding-sibling::li选择前两个
  • )

五、高级用法

5.1 动态属性处理

  • 使用contains()匹配部分属性值(如//div[contains(@class, "nav_")]匹配动态变化的Class名)
  • 部分解析器(如lxml)支持matches()函数(需XPath 2.0+):
    //div[matches(@id, '\d+$')]  # 匹配数字结尾的ID属性
    

5.2 复杂条件组合

//input[@type="text" and @name="user"][position()=1]  # 首个满足条件的输入框

5.3 字符串处理函数

  • substring():截取文本(如//span[substring(text(), 1, 4)="2025"]匹配以2025开头的文本)
  • concat():拼接属性(如//a[concat(@href, @title)="/about关于我们"])

六、实战技巧

  1. 避免绝对路径依赖

    //*[@id="main"]//p  # 优于 /html/body/div[1]/div[2]/p
    
  2. 表格数据提取

    //table//tr[td[2]="价格"]/td[1]  # 定位第二列为"价格"的行,返回第一列数据
    
  3. 多路径查询

    //title | //price  # 选择所有和<price>元素
    </code></pre> </li> 
      </ol> 
      <h3>七、Python实战示例</h3> 
      <pre><code class="prism language-python"><span class="token keyword">from</span> lxml <span class="token keyword">import</span> etree
    
    html <span class="token operator">=</span> etree<span class="token punctuation">.</span>HTML<span class="token punctuation">(</span>html_text<span class="token punctuation">)</span>
    <span class="token comment"># 提取所有带href属性的<a>标签</span>
    links <span class="token operator">=</span> html<span class="token punctuation">.</span>xpath<span class="token punctuation">(</span><span class="token string">'//a[@href]'</span><span class="token punctuation">)</span>
    <span class="token comment"># 获取第二个<div>的文本内容</span>
    text <span class="token operator">=</span> html<span class="token punctuation">.</span>xpath<span class="token punctuation">(</span><span class="token string">'//div[2]/text()'</span><span class="token punctuation">)</span>
    <span class="token comment"># 使用contains函数匹配部分class</span>
    nav_items <span class="token operator">=</span> html<span class="token punctuation">.</span>xpath<span class="token punctuation">(</span><span class="token string">'//div[contains(@class, "nav_")]'</span><span class="token punctuation">)</span>
    </code></pre> 
      <h3>总结</h3> 
      <p>XPath通过路径表达式、属性过滤、函数和轴定位,实现精准的节点选择。掌握核心语法(如<code>//</code>、<code>@</code>、<code>[]</code>)和常用函数(如<code>contains()</code>、<code>last()</code>)是高效解析HTML/XML的关键。在实际应用中,灵活组合这些功能可以应对各种复杂的数据提取场景。</p> 
     </div> 
    </div>
                                </div>
                            </div>
                        </div>
                        <!--PC和WAP自适应版-->
                        <div id="SOHUCS" sid="1940115907913248768"></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/1950233451282100224.htm"
                               title="python 读excel每行替换_Python脚本操作Excel实现批量替换功能" target="_blank">python 读excel每行替换_Python脚本操作Excel实现批量替换功能</a>
                            <span class="text-muted">weixin_39646695</span>
    <a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E8%AF%BBexcel%E6%AF%8F%E8%A1%8C%E6%9B%BF%E6%8D%A2/1.htm">读excel每行替换</a>
                            <div>Python脚本操作Excel实现批量替换功能大家好,给大家分享下如何使用Python脚本操作Excel实现批量替换。使用的工具Openpyxl,一个处理excel的python库,处理excel,其实针对的就是WorkBook,Sheet,Cell这三个最根本的元素~明确需求原始excel如下我们的目标是把下面excel工作表的sheet1表页A列的内容“替换我吧”批量替换为B列的“我用来替换的</div>
                        </li>
                        <li><a href="/article/1950208107430866944.htm"
                               title="python笔记14介绍几个魔法方法" target="_blank">python笔记14介绍几个魔法方法</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/python/1.htm">python</a>
                            <div>python笔记14介绍几个魔法方法先声明一下各位大佬,这是我的笔记。如有错误,恳请指正。另外,感谢您的观看,谢谢啦!(1).__doc__输出对应的函数,类的说明文档print(print.__doc__)print(value,...,sep='',end='\n',file=sys.stdout,flush=False)Printsthevaluestoastream,ortosys.std</div>
                        </li>
                        <li><a href="/article/1950204954295726080.htm"
                               title="Anaconda 和 Miniconda:功能详解与选择建议" target="_blank">Anaconda 和 Miniconda:功能详解与选择建议</a>
                            <span class="text-muted">古月฿</span>
    <a class="tag" taget="_blank" href="/search/python%E5%85%A5%E9%97%A8/1.htm">python入门</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/conda/1.htm">conda</a>
                            <div>Anaconda和Miniconda详细介绍一、Anaconda的详细介绍1.什么是Anaconda?Anaconda是一个开源的包管理和环境管理工具,在数据科学、机器学习以及科学计算领域发挥着关键作用。它以Python和R语言为基础,为用户精心准备了大量预装库和工具,极大地缩短了搭建数据科学环境的时间。对于那些想要快速开展数据分析、模型训练等工作的人员来说,Anaconda就像是一个一站式的“数</div>
                        </li>
                        <li><a href="/article/1950204701714739200.htm"
                               title="环境搭建 | Python + Anaconda / Miniconda + PyCharm 的安装、配置与使用" target="_blank">环境搭建 | Python + Anaconda / Miniconda + PyCharm 的安装、配置与使用</a>
                            <span class="text-muted"></span>
    
                            <div>本文将分别介绍Python、Anaconda/Miniconda、PyCharm的安装、配置与使用,详细介绍Python环境搭建的全过程,涵盖Python、Pip、PythonLauncher、Anaconda、Miniconda、Pycharm等内容,以官方文档为参照,使用经验为补充,内容全面而详实。由于图片太多,就先贴一个无图简化版吧,详情请查看Python+Anaconda/Minicond</div>
                        </li>
                        <li><a href="/article/1950202938265759744.htm"
                               title="你竟然还在用克隆删除?Conda最新版rename命令全攻略!" target="_blank">你竟然还在用克隆删除?Conda最新版rename命令全攻略!</a>
                            <span class="text-muted">曦紫沐</span>
    <a class="tag" taget="_blank" href="/search/Python%E5%9F%BA%E7%A1%80%E7%9F%A5%E8%AF%86/1.htm">Python基础知识</a><a class="tag" taget="_blank" href="/search/conda/1.htm">conda</a><a class="tag" taget="_blank" href="/search/%E8%99%9A%E6%8B%9F%E7%8E%AF%E5%A2%83%E7%AE%A1%E7%90%86/1.htm">虚拟环境管理</a>
                            <div>文章摘要Conda虚拟环境管理终于迎来革命性升级!本文揭秘Conda4.9+版本新增的rename黑科技,彻底告别传统“克隆+删除”的繁琐操作。从命令解析到实战案例,手把手教你如何安全高效地重命名Python虚拟环境,附带版本检测、环境迁移、故障排查等进阶技巧,助你提升开发效率10倍!一、颠覆认知:Conda居然自带重命名功能?很多开发者仍停留在“Conda无法直接重命名环境”的认知阶段,实际上自</div>
                        </li>
                        <li><a href="/article/1950202054706262016.htm"
                               title="centos7安装配置 Anaconda3" target="_blank">centos7安装配置 Anaconda3</a>
                            <span class="text-muted"></span>
    
                            <div>Anaconda是一个用于科学计算的Python发行版,Anaconda于Python,相当于centos于linux。下载[root@testsrc]#mwgethttps://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-5.2.0-Linux-x86_64.shBegintodownload:Anaconda3-5.2.0-L</div>
                        </li>
                        <li><a href="/article/1950202054219722752.htm"
                               title="Pandas:数据科学的超级瑞士军刀" target="_blank">Pandas:数据科学的超级瑞士军刀</a>
                            <span class="text-muted">科技林总</span>
    <a class="tag" taget="_blank" href="/search/DeepSeek%E5%AD%A6AI/1.htm">DeepSeek学AI</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a>
                            <div>**——从零基础到高效分析的进化指南**###**一、Pandas诞生:数据革命的救世主****2010年前的数据分析噩梦**:```python#传统Python处理表格数据data=[]forrowincsv_file:ifrow[3]>100androw[2]=="China":data.append(float(row[5])#代码冗长易错!```**核心痛点**:-Excel处理百万行崩</div>
                        </li>
                        <li><a href="/article/1950195876991397888.htm"
                               title="【Jupyter】个人开发常见命令" target="_blank">【Jupyter】个人开发常见命令</a>
                            <span class="text-muted">TIM老师</span>
    <a class="tag" taget="_blank" href="/search/%23/1.htm">#</a><a class="tag" taget="_blank" href="/search/Pycharm/1.htm">Pycharm</a><a class="tag" taget="_blank" href="/search/%26amp%3B/1.htm">&</a><a class="tag" taget="_blank" href="/search/VSCode/1.htm">VSCode</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>
                            <div>1.查看python版本importsysprint(sys.version)2.ipynb/py文件转换jupyternbconvert--topythonmy_file.ipynbipynb转换为mdjupyternbconvert--tomdmy_file.ipynbipynb转为htmljupyternbconvert--tohtmlmy_file.ipynbipython转换为pdfju</div>
                        </li>
                        <li><a href="/article/1950194363237724160.htm"
                               title="用 Python 开发小游戏:零基础也能做出《贪吃蛇》" target="_blank">用 Python 开发小游戏:零基础也能做出《贪吃蛇》</a>
                            <span class="text-muted"></span>
    
                            <div>本文专为零基础学习者打造,详细介绍如何用Python开发经典小游戏《贪吃蛇》。无需复杂编程知识,从环境搭建到代码编写、功能实现,逐步讲解核心逻辑与操作。涵盖Pygame库的基础运用、游戏界面设计、蛇的移动与食物生成规则等,让新手能按步骤完成开发,同时融入SEO优化要点,帮助读者轻松入门Python游戏开发,体验从0到1做出游戏的乐趣。一、为什么选择用Python开发《贪吃蛇》对于零基础学习者来说,</div>
                        </li>
                        <li><a href="/article/1950193733681082368.htm"
                               title="基于Python的AI健康助手:开发与部署全攻略" target="_blank">基于Python的AI健康助手:开发与部署全攻略</a>
                            <span class="text-muted">AI算力网络与通信</span>
    <a class="tag" taget="_blank" href="/search/AI%E7%AE%97%E5%8A%9B%E7%BD%91%E7%BB%9C%E4%B8%8E%E9%80%9A%E4%BF%A1%E5%8E%9F%E7%90%86/1.htm">AI算力网络与通信原理</a><a class="tag" taget="_blank" href="/search/AI%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD%E5%A4%A7%E6%95%B0%E6%8D%AE%E6%9E%B6%E6%9E%84/1.htm">AI人工智能大数据架构</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</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/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a><a class="tag" taget="_blank" href="/search/ai/1.htm">ai</a>
                            <div>基于Python的AI健康助手:开发与部署全攻略关键词:Python、AI健康助手、机器学习、自然语言处理、Flask、部署、健康管理摘要:本文将详细介绍如何使用Python开发一个AI健康助手,从需求分析、技术选型到核心功能实现,再到最终部署上线的完整过程。我们将使用自然语言处理技术理解用户健康咨询,通过机器学习模型提供个性化建议,并展示如何用Flask框架构建Web应用接口。文章包含大量实际代</div>
                        </li>
                        <li><a href="/article/1950192849786040320.htm"
                               title="AI人工智能中的数据挖掘:提升智能决策能力" target="_blank">AI人工智能中的数据挖掘:提升智能决策能力</a>
                            <span class="text-muted"></span>
    
                            <div>AI人工智能中的数据挖掘:提升智能决策能力关键词:数据挖掘、人工智能、机器学习、智能决策、数据分析、特征工程、模型优化摘要:本文深入探讨了数据挖掘在人工智能领域中的核心作用,重点分析了如何通过数据挖掘技术提升智能决策能力。文章从基础概念出发,详细介绍了数据挖掘的关键算法、数学模型和实际应用场景,并通过Python代码示例展示了数据挖掘的全流程。最后,文章展望了数据挖掘技术的未来发展趋势和面临的挑战</div>
                        </li>
                        <li><a href="/article/1950192217708621824.htm"
                               title="lesson20:Python函数的标注" target="_blank">lesson20:Python函数的标注</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>目录引言:为什么函数标注是现代Python开发的必备技能一、函数标注的基础语法1.1参数与返回值标注1.2支持的标注类型1.3Python3.9+的重大改进:标准集合泛型二、高级标注技巧与最佳实践2.1复杂参数结构标注2.2函数类型与回调标注2.3变量注解与类型别名三、静态类型检查工具应用3.1mypy:最流行的类型检查器3.2Pyright与IDE集成3.3运行时类型验证四、函数标注的工程价值与</div>
                        </li>
                        <li><a href="/article/1950190325960077312.htm"
                               title="Jupyter Notebook:数据科学的“瑞士军刀”" target="_blank">Jupyter Notebook:数据科学的“瑞士军刀”</a>
                            <span class="text-muted">a小胡哦</span>
    <a class="tag" taget="_blank" href="/search/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E5%9F%BA%E7%A1%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>在数据科学的世界里,JupyterNotebook是一个不可或缺的工具,它就像是数据科学家手中的“瑞士军刀”,功能强大且灵活多变。今天,就让我们一起深入了解这个神奇的工具。一、JupyterNotebook是什么?JupyterNotebook是一个开源的Web应用程序,它允许你创建和共享包含实时代码、方程、可视化和解释性文本的文档。它支持多种编程语言,其中Python是最常用的语言之一。Jupy</div>
                        </li>
                        <li><a href="/article/1950187554129113088.htm"
                               title="Django学习笔记(一)" target="_blank">Django学习笔记(一)</a>
                            <span class="text-muted"></span>
    
                            <div>学习视频为:pythondjangoweb框架开发入门全套视频教程一、安装pipinstalldjango==****检查是否安装成功django.get_version()二、django新建项目操作1、新建一个项目django-adminstartprojectproject_name2、新建APPcdproject_namedjango-adminstartappApp注:一个project</div>
                        </li>
                        <li><a href="/article/1950185789447008256.htm"
                               title="Python 程序设计讲义(26):字符串的用法——字符的编码" target="_blank">Python 程序设计讲义(26):字符串的用法——字符的编码</a>
                            <span class="text-muted">睿思达DBA_WGX</span>
    <a class="tag" taget="_blank" href="/search/Python/1.htm">Python</a><a class="tag" taget="_blank" href="/search/%E8%AE%B2%E4%B9%89/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程序设计讲义(26):字符串的用法——字符的编码目录Python程序设计讲义(26):字符串的用法——字符的编码一、字符的编码二、`ASCII`编码三、`Unicode`编码四、使用`ord()`函数查询一个字符对应的`Unicode`编码五、使用`chr()`函数查询一个`Unicode`编码对应的字符六、`Python`字符串的特征一、字符的编码计算机默认只能处理二进制数,而不能处</div>
                        </li>
                        <li><a href="/article/1950183898780594176.htm"
                               title="【Python】pypinyin-汉字拼音转换工具" target="_blank">【Python】pypinyin-汉字拼音转换工具</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/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E8%87%AA%E7%84%B6%E8%AF%AD%E8%A8%80%E5%A4%84%E7%90%86/1.htm">自然语言处理</a>
                            <div>文章目录1.主要功能2.安装3.常用API3.1拼音风格3.2核心API3.2.1pypinyin.pinyin()3.2.2pypinyin.lazy_pinyin()3.2.3pypinyin.load_single_dict()3.2.4pypinyin.load_phrases_dict()3.2.5pypinyin.slug()3.3注册新的拼音风格4.基本用法4.1库导入4.2基本汉字</div>
                        </li>
                        <li><a href="/article/1950183268448006144.htm"
                               title="python编程第十四课:数据可视化" target="_blank">python编程第十四课:数据可视化</a>
                            <span class="text-muted">小小源助手</span>
    <a class="tag" taget="_blank" href="/search/Python%E4%BB%A3%E7%A0%81%E5%AE%9E%E4%BE%8B/1.htm">Python代码实例</a><a class="tag" taget="_blank" href="/search/%E4%BF%A1%E6%81%AF%E5%8F%AF%E8%A7%86%E5%8C%96/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数据可视化:让数据“开口说话”在当今数据爆炸的时代,数据可视化已成为探索数据规律、传达数据信息的关键技术。Python凭借其丰富的第三方库,为数据可视化提供了强大而灵活的解决方案。本文将带你深入了解Matplotlib库的基础绘图、Seaborn库的高级可视化以及交互式可视化工具Plotly,帮助你通过图表清晰地展示数据背后的故事。一、Matplotlib库基础绘图Matplotlib</div>
                        </li>
                        <li><a href="/article/1950180118999658496.htm"
                               title="Python数据可视化:用代码绘制数据背后的故事" target="_blank">Python数据可视化:用代码绘制数据背后的故事</a>
                            <span class="text-muted">AAEllisonPang</span>
    <a class="tag" taget="_blank" href="/search/Python/1.htm">Python</a><a class="tag" taget="_blank" href="/search/%E4%BF%A1%E6%81%AF%E5%8F%AF%E8%A7%86%E5%8C%96/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凭借其丰富的可视化生态库,已成为数据科学家的首选工具。本文将带您从基础到高级,探索如何用Python将冰冷数字转化为引人入胜的视觉叙事。一、基础篇:二维可视化的艺术表达1.1Matplotlib:可视化领域的瑞士军刀importmatplotlib.pyplotaspltimportnumpyasnpx=np.linsp</div>
                        </li>
                        <li><a href="/article/1950179614320029696.htm"
                               title="python学习笔记(汇总)" target="_blank">python学习笔记(汇总)</a>
                            <span class="text-muted">朕的剑还未配妥</span>
    <a class="tag" taget="_blank" href="/search/python%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0%E6%95%B4%E7%90%86/1.htm">python学习笔记整理</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0/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>
                            <div>文章目录一.基础知识二.python中的数据类型三.运算符四.程序的控制结构五.列表六.字典七.元组八.集合九.字符串十.函数十一.解决bug一.基础知识print函数字符串要加引号,数字可不加引号,如print(123.4)print('小谢')print("洛天依")还可输入表达式,如print(1+3)如果使用三引号,print打印的内容可不在同一行print("line1line2line</div>
                        </li>
                        <li><a href="/article/1950175452580605952.htm"
                               title="Gerapy爬虫管理框架深度解析:企业级分布式爬虫管控平台" target="_blank">Gerapy爬虫管理框架深度解析:企业级分布式爬虫管控平台</a>
                            <span class="text-muted">Python×CATIA工业智造</span>
    <a class="tag" taget="_blank" href="/search/%E7%88%AC%E8%99%AB/1.htm">爬虫</a><a class="tag" taget="_blank" href="/search/%E5%88%86%E5%B8%83%E5%BC%8F/1.htm">分布式</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/pycharm/1.htm">pycharm</a>
                            <div>引言:爬虫工程化的必然选择随着企业数据采集需求指数级增长,传统单点爬虫管理模式面临三重困境:管理效率瓶颈:手动部署耗时占开发总时长的40%以上系统可靠性低:研究显示超过65%的爬虫故障源于部署或调度错误资源利用率差:平均爬虫服务器CPU利用率不足30%爬虫管理方案对比:┌───────────────┬─────────────┬───────────┬───────────┬──────────</div>
                        </li>
                        <li><a href="/article/1950175199089455104.htm"
                               title="PDF转Markdown - Python 实现方案与代码" target="_blank">PDF转Markdown - Python 实现方案与代码</a>
                            <span class="text-muted">Eiceblue</span>
    <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/PDF/1.htm">PDF</a><a class="tag" taget="_blank" href="/search/pdf/1.htm">pdf</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/vscode/1.htm">vscode</a>
                            <div>PDF作为广泛使用的文档格式,转换为轻量级标记语言Markdown后,可无缝集成到技术文档、博客平台和版本控制系统中,提高内容的可编辑性和可访问性。本文将详细介绍如何使用国产Spire.PDFforPython库将PDF文档转换为Markdown格式。技术优势:精准保留原始文档结构(段落/列表/表格)完整提取文本和图像内容无需Adobe依赖的纯Python实现支持Linux/Windows/mac</div>
                        </li>
                        <li><a href="/article/1950174441992417280.htm"
                               title="使用Python和Gradio构建实时数据可视化工具" target="_blank">使用Python和Gradio构建实时数据可视化工具</a>
                            <span class="text-muted">PythonAI编程架构实战家</span>
    <a class="tag" taget="_blank" href="/search/%E4%BF%A1%E6%81%AF%E5%8F%AF%E8%A7%86%E5%8C%96/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/ai/1.htm">ai</a>
                            <div>使用Python和Gradio构建实时数据可视化工具关键词:Python、Gradio、数据可视化、实时数据、Web应用、交互式界面、数据科学摘要:本文将详细介绍如何使用Python和Gradio框架构建一个实时数据可视化工具。我们将从基础概念开始,逐步深入到核心算法实现,包括数据处理、可视化技术以及Gradio的交互式界面设计。通过实际项目案例,读者将学习如何创建一个功能完整、响应迅速的实时数据</div>
                        </li>
                        <li><a href="/article/1950174315609649152.htm"
                               title="Python Gradio:实现交互式图像编辑" target="_blank">Python Gradio:实现交互式图像编辑</a>
                            <span class="text-muted">PythonAI编程架构实战家</span>
    <a class="tag" taget="_blank" href="/search/Python%E7%BC%96%E7%A8%8B%E4%B9%8B%E9%81%93/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><a class="tag" taget="_blank" href="/search/ai/1.htm">ai</a>
                            <div>PythonGradio:实现交互式图像编辑关键词:Python,Gradio,交互式图像编辑,计算机视觉,深度学习,图像处理,Web应用摘要:本文将深入探讨如何使用Python的Gradio库构建交互式图像编辑应用。我们将从基础概念开始,逐步介绍Gradio的核心功能,并通过实际代码示例展示如何实现各种图像处理功能。文章将涵盖图像滤镜应用、对象检测、风格迁移等高级功能,同时提供完整的项目实战案例</div>
                        </li>
                        <li><a href="/article/1950174063116742656.htm"
                               title="数据可视化:数据世界的直观呈现" target="_blank">数据可视化:数据世界的直观呈现</a>
                            <span class="text-muted">卢政权1</span>
    <a class="tag" taget="_blank" href="/search/%E4%BF%A1%E6%81%AF%E5%8F%AF%E8%A7%86%E5%8C%96/1.htm">信息可视化</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90/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>在当今数字化浪潮中,数据呈爆炸式增长。数据可视化作为一种强大的技术手段,能够将复杂的数据转化为直观的图形、图表等形式,让数据背后的信息一目了然。无论是在商业决策、科学研究还是日常数据分析中,数据可视化都发挥着极为重要的作用。它帮助我们快速理解数据的分布、趋势、关联等特征,从而为进一步的分析和行动提供有力支持。接下来,我们将深入探讨数据可视化的奥秘,并通过代码示例展示其实际应用。一、Python数据</div>
                        </li>
                        <li><a href="/article/1950172300749893632.htm"
                               title="Python 程序设计讲义(25):循环结构——嵌套循环" target="_blank">Python 程序设计讲义(25):循环结构——嵌套循环</a>
                            <span class="text-muted"></span>
    
                            <div>Python程序设计讲义(25):循环结构——嵌套循环目录Python程序设计讲义(25):循环结构——嵌套循环一、嵌套循环的执行流程二、嵌套循环对应的几种情况1、内循环和外循环互不影响2、外循环迭代影响内循环的条件3、外循环迭代影响内循环的循环体嵌套循环是指在一个循环体中嵌套另一个循环。while循环中可以嵌入另一个while循环或for循环。反之,也可以在for循环中嵌入另一个for循环或wh</div>
                        </li>
                        <li><a href="/article/1950166498563649536.htm"
                               title="基于Python引擎的PP-OCR模型库推理" target="_blank">基于Python引擎的PP-OCR模型库推理</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/ocr/1.htm">ocr</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/PaddleOCR/1.htm">PaddleOCR</a><a class="tag" taget="_blank" href="/search/PaddlePaddle/1.htm">PaddlePaddle</a>
                            <div>基于Python引擎的PP-OCR模型库推理1.文本检测模型推理#下载超轻量中文检测模型:wgethttps://paddleocr.bj.bcebos.com/PP-OCRv3/chinese/ch_PP-OCRv3_det_infer.tartarxfch_PP-OCRv3_det_infer.tarpython3tools/infer/predict_det.py--image_dir=".</div>
                        </li>
                        <li><a href="/article/1950158807220940800.htm"
                               title="一个开源AI牛马神器 | AiPy,平替Manus,装完直接上手写Python!" target="_blank">一个开源AI牛马神器 | AiPy,平替Manus,装完直接上手写Python!</a>
                            <span class="text-muted">Agent加载失败</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/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E6%BA%90/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/AI%E7%BC%96%E7%A8%8B/1.htm">AI编程</a>
                            <div>还记得三个月前那个在闲鱼被炒到万元邀请码的Manus吗?现在你点官网,直接提示「所在地区不可用」了它走了,但更香的国产开源项目出现了:AiPy(爱派)。主打一个极致简化的AIAgent理念:别搞什么插件市场、Agent路由,直接给AI一个Python解释器,让它用自然语言写代码干活。听起来狠活?实际体验更狠:•完全本地化,界面傻瓜式操作,支持自然语言生成&执行Python任务;•数据清洗、文档总结</div>
                        </li>
                        <li><a href="/article/1950158303287898112.htm"
                               title="零数学基础理解AI核心概念:梯度下降可视化实战" target="_blank">零数学基础理解AI核心概念:梯度下降可视化实战</a>
                            <span class="text-muted">九章云极AladdinEdu</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/gpu%E7%AE%97%E5%8A%9B/1.htm">gpu算力</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/pytorch/1.htm">pytorch</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E8%AF%AD%E8%A8%80%E6%A8%A1%E5%9E%8B/1.htm">语言模型</a><a class="tag" taget="_blank" href="/search/opencv/1.htm">opencv</a>
                            <div>点击“AladdinEdu,同学们用得起的【H卡】算力平台”,H卡级别算力,按量计费,灵活弹性,顶级配置,学生专属优惠。用Python动画演示损失函数优化过程,数学公式具象化读者收获:直观理解模型训练本质,破除"数学恐惧症"当盲人登山者摸索下山路径时,他本能地运用了梯度下降算法。本文将用动态可视化技术,让你像感受重力一样理解AI训练的核心原理——无需任何数学公式推导。一、梯度下降:AI世界的"万有</div>
                        </li>
                        <li><a href="/article/1950141538352820224.htm"
                               title="2025.07 Java入门笔记01" target="_blank">2025.07 Java入门笔记01</a>
                            <span class="text-muted">殷浩焕</span>
    <a class="tag" taget="_blank" href="/search/%E7%AC%94%E8%AE%B0/1.htm">笔记</a>
                            <div>一、熟悉IDEA和Java语法(一)LiuCourseJavaOOP1.一直在用C++开发,python也用了些,Java是真的不熟,用什么IDE还是问的同事;2.一开始安装了jdk-23,拿VSCode当编辑器,在cmd窗口编译运行,也能玩;但是想正儿八经搞项目开发,还是需要IDE;3.安装了IDEA社区版:(1)IDE通常自带对应编程语言的安装包,例如IDEA自带jbr-21(和jdk是不同的</div>
                        </li>
                        <li><a href="/article/1950138256133779456.htm"
                               title="响应式编程实践:Spring Boot WebFlux构建高性能非阻塞服务" target="_blank">响应式编程实践:Spring Boot WebFlux构建高性能非阻塞服务</a>
                            <span class="text-muted">fanxbl957</span>
    <a class="tag" taget="_blank" href="/search/Web/1.htm">Web</a><a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a><a class="tag" taget="_blank" href="/search/boot/1.htm">boot</a><a class="tag" taget="_blank" href="/search/%E5%90%8E%E7%AB%AF/1.htm">后端</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a>
                            <div>博主介绍:Java、Python、js全栈开发“多面手”,精通多种编程语言和技术,痴迷于人工智能领域。秉持着对技术的热爱与执着,持续探索创新,愿在此分享交流和学习,与大家共进步。全栈开发环境搭建运行攻略:多语言一站式指南(环境搭建+运行+调试+发布+保姆级详解)感兴趣的可以先收藏起来,希望帮助更多的人响应式编程实践:SpringBootWebFlux构建高性能非阻塞服务一、引言在当今数字化时代,互</div>
                        </li>
                                    <li><a href="/article/80.htm"
                                           title="java杨辉三角" target="_blank">java杨辉三角</a>
                                        <span class="text-muted">3213213333332132</span>
    <a class="tag" taget="_blank" href="/search/java%E5%9F%BA%E7%A1%80/1.htm">java基础</a>
                                        <div>
    package com.algorithm;
    
    /**
     * @Description 杨辉三角
     * @author FuJianyong
     * 2015-1-22上午10:10:59
     */
    public class YangHui {
    	public static void main(String[] args) {
    		//初始化二维数组长度
    		int[][] y</div>
                                    </li>
                                    <li><a href="/article/207.htm"
                                           title="《大话重构》之大布局的辛酸历史" target="_blank">《大话重构》之大布局的辛酸历史</a>
                                        <span class="text-muted">白糖_</span>
    <a class="tag" taget="_blank" href="/search/%E9%87%8D%E6%9E%84/1.htm">重构</a>
                                        <div>《大话重构》中提到“大布局你伤不起”,如果企图重构一个陈旧的大型系统是有非常大的风险,重构不是想象中那么简单。我目前所在公司正好对产品做了一次“大布局重构”,下面我就分享这个“大布局”项目经验给大家。 
      
     
     背景 
     
            公司专注于企业级管理产品软件,企业有大中小之分,在2000年初公司用JSP/Servlet开发了一套针对中</div>
                                    </li>
                                    <li><a href="/article/334.htm"
                                           title="电驴链接在线视频播放源码" target="_blank">电驴链接在线视频播放源码</a>
                                        <span class="text-muted">dubinwei</span>
    <a class="tag" taget="_blank" href="/search/%E6%BA%90%E7%A0%81/1.htm">源码</a><a class="tag" taget="_blank" href="/search/%E7%94%B5%E9%A9%B4/1.htm">电驴</a><a class="tag" taget="_blank" href="/search/%E6%92%AD%E6%94%BE%E5%99%A8/1.htm">播放器</a><a class="tag" taget="_blank" href="/search/%E8%A7%86%E9%A2%91/1.htm">视频</a><a class="tag" taget="_blank" href="/search/ed2k/1.htm">ed2k</a>
                                        <div>本项目是个搜索电驴(ed2k)链接的应用,借助于磁力视频播放器(官网: 
    http://loveandroid.duapp.com/ 开放平台),可以实现在线播放视频,也可以用迅雷或者其他下载工具下载。 
    项目源码: 
    http://git.oschina.net/svo/Emule,动态更新。也可从附件中下载。 
    项目源码依赖于两个库项目,库项目一链接: 
    http://git.oschina.</div>
                                    </li>
                                    <li><a href="/article/461.htm"
                                           title="Javascript中函数的toString()方法" target="_blank">Javascript中函数的toString()方法</a>
                                        <span class="text-muted">周凡杨</span>
    <a class="tag" taget="_blank" href="/search/JavaScript/1.htm">JavaScript</a><a class="tag" taget="_blank" href="/search/js/1.htm">js</a><a class="tag" taget="_blank" href="/search/toString/1.htm">toString</a><a class="tag" taget="_blank" href="/search/function/1.htm">function</a><a class="tag" taget="_blank" href="/search/object/1.htm">object</a>
                                        <div>简述 
        The toString() method returns a string representing the source code of the function. 
        简译之,Javascript的toString()方法返回一个代表函数源代码的字符串。 
    句法 
        function.</div>
                                    </li>
                                    <li><a href="/article/588.htm"
                                           title="struts处理自定义异常" target="_blank">struts处理自定义异常</a>
                                        <span class="text-muted">g21121</span>
    <a class="tag" taget="_blank" href="/search/struts/1.htm">struts</a>
                                        <div>很多时候我们会用到自定义异常来表示特定的错误情况,自定义异常比较简单,只要分清是运行时异常还是非运行时异常即可,运行时异常不需要捕获,继承自RuntimeException,是由容器自己抛出,例如空指针异常。 
    非运行时异常继承自Exception,在抛出后需要捕获,例如文件未找到异常。 
    此处我们用的是非运行时异常,首先定义一个异常LoginException: 
    /**
     * 类描述:登录相</div>
                                    </li>
                                    <li><a href="/article/715.htm"
                                           title="Linux中find常见用法示例" target="_blank">Linux中find常见用法示例</a>
                                        <span class="text-muted">510888780</span>
    <a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a>
                                        <div>Linux中find常见用法示例 
     
    ·find   path   -option   [   -print ]   [ -exec   -ok   command ]   {} \; 
     
     
     
     
    find命令的参数;</div>
                                    </li>
                                    <li><a href="/article/842.htm"
                                           title="SpringMVC的各种参数绑定方式" target="_blank">SpringMVC的各种参数绑定方式</a>
                                        <span class="text-muted">Harry642</span>
    <a class="tag" taget="_blank" href="/search/springMVC/1.htm">springMVC</a><a class="tag" taget="_blank" href="/search/%E7%BB%91%E5%AE%9A/1.htm">绑定</a><a class="tag" taget="_blank" href="/search/%E8%A1%A8%E5%8D%95/1.htm">表单</a>
                                        <div>1. 基本数据类型(以int为例,其他类似): 
    Controller代码: 
     
    
        @RequestMapping("saysth.do")
        public void test(int count) {
        }
     
    表单代码: 
     
    
    <form action="saysth.do" method="post&q</div>
                                    </li>
                                    <li><a href="/article/969.htm"
                                           title="Java 获取Oracle ROWID" target="_blank">Java 获取Oracle ROWID</a>
                                        <span class="text-muted">aijuans</span>
    <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/oracle/1.htm">oracle</a>
                                        <div>  
    A ROWID is an identification tag unique for each row of an Oracle Database table. The ROWID can be thought of as a virtual column, containing the ID for each row. 
    The oracle.sql.ROWID class i</div>
                                    </li>
                                    <li><a href="/article/1096.htm"
                                           title="java获取方法的参数名" target="_blank">java获取方法的参数名</a>
                                        <span class="text-muted">antlove</span>
    <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/jdk/1.htm">jdk</a><a class="tag" taget="_blank" href="/search/parameter/1.htm">parameter</a><a class="tag" taget="_blank" href="/search/method/1.htm">method</a><a class="tag" taget="_blank" href="/search/reflect/1.htm">reflect</a>
                                        <div>reflect.ClassInformationUtil.java 
    package reflect;
    
    import javassist.ClassPool;
    import javassist.CtClass;
    import javassist.CtMethod;
    import javassist.Modifier;
    import javassist.bytecode.CodeAtt</div>
                                    </li>
                                    <li><a href="/article/1223.htm"
                                           title="JAVA正则表达式匹配 查找 替换 提取操作" target="_blank">JAVA正则表达式匹配 查找 替换 提取操作</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/%E6%AD%A3%E5%88%99%E8%A1%A8%E8%BE%BE%E5%BC%8F/1.htm">正则表达式</a><a class="tag" taget="_blank" href="/search/%E6%9B%BF%E6%8D%A2/1.htm">替换</a><a class="tag" taget="_blank" href="/search/%E6%8F%90%E5%8F%96/1.htm">提取</a><a class="tag" taget="_blank" href="/search/%E6%9F%A5%E6%89%BE/1.htm">查找</a>
                                        <div>正则表达式的查找;主要是用到String类中的split(); 
          String str; 
         str.split();方法中传入按照什么规则截取,返回一个String数组 
      
    常见的截取规则: 
    str.split("\\.")按照.来截取
    
    str.</div>
                                    </li>
                                    <li><a href="/article/1350.htm"
                                           title="Java中equals()与hashCode()方法详解" target="_blank">Java中equals()与hashCode()方法详解</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/set/1.htm">set</a><a class="tag" taget="_blank" href="/search/equals%28%29/1.htm">equals()</a><a class="tag" taget="_blank" href="/search/hashCode%28%29/1.htm">hashCode()</a>
                                        <div>一.equals()方法详解 
        equals()方法在object类中定义如下:  
    public boolean equals(Object obj) {
        return (this == obj);
    }
     
       很明显是对两个对象的地址值进行的比较(即比较引用是否相同)。但是我们知道,String 、Math、I</div>
                                    </li>
                                    <li><a href="/article/1477.htm"
                                           title="精通Oracle10编程SQL(4)使用SQL语句" target="_blank">精通Oracle10编程SQL(4)使用SQL语句</a>
                                        <span class="text-muted">bijian1013</span>
    <a class="tag" taget="_blank" href="/search/oracle/1.htm">oracle</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a><a class="tag" taget="_blank" href="/search/plsql/1.htm">plsql</a>
                                        <div>--工资级别表
    create table SALGRADE
    (
      GRADE    NUMBER(10),
      LOSAL    NUMBER(10,2),
      HISAL    NUMBER(10,2)
    )
    
    insert into SALGRADE values(1,0,100);
    insert into SALGRADE values(2,100,200);
    inser</div>
                                    </li>
                                    <li><a href="/article/1604.htm"
                                           title="【Nginx二】Nginx作为静态文件HTTP服务器" target="_blank">【Nginx二】Nginx作为静态文件HTTP服务器</a>
                                        <span class="text-muted">bit1129</span>
    <a class="tag" taget="_blank" href="/search/HTTP%E6%9C%8D%E5%8A%A1%E5%99%A8/1.htm">HTTP服务器</a>
                                        <div> Nginx作为静态文件HTTP服务器 
     
      在本地系统中创建/data/www目录,存放html文件(包括index.html) 
     创建/data/images目录,存放imags图片 
     在主配置文件中添加http指令 
     
      
    http {
        server {
            listen       80;
            server_name  </div>
                                    </li>
                                    <li><a href="/article/1731.htm"
                                           title="kafka获得最新partition offset" target="_blank">kafka获得最新partition offset</a>
                                        <span class="text-muted">blackproof</span>
    <a class="tag" taget="_blank" href="/search/kafka/1.htm">kafka</a><a class="tag" taget="_blank" href="/search/partition/1.htm">partition</a><a class="tag" taget="_blank" href="/search/offset/1.htm">offset</a><a class="tag" taget="_blank" href="/search/%E6%9C%80%E6%96%B0/1.htm">最新</a>
                                        <div>kafka获得partition下标,需要用到kafka的simpleconsumer 
      
    import java.util.ArrayList;
    import java.util.Collections;
    import java.util.Date;
    import java.util.HashMap;
    import java.util.List;
    import java.</div>
                                    </li>
                                    <li><a href="/article/1858.htm"
                                           title="centos 7安装docker两种方式" target="_blank">centos 7安装docker两种方式</a>
                                        <span class="text-muted">ronin47</span>
    
                                        <div>      第一种是采用yum 方式 
                 yum install -y docker 
              </div>
                                    </li>
                                    <li><a href="/article/1985.htm"
                                           title="java-60-在O(1)时间删除链表结点" target="_blank">java-60-在O(1)时间删除链表结点</a>
                                        <span class="text-muted">bylijinnan</span>
    <a class="tag" taget="_blank" href="/search/java/1.htm">java</a>
                                        <div>
    
    public class DeleteNode_O1_Time {
    
    	/**
    	 * Q 60 在O(1)时间删除链表结点
    	 * 给定链表的头指针和一个结点指针(!!),在O(1)时间删除该结点
    	 * 
    	 * Assume the list is:
    	 * head->...->nodeToDelete->mNode->nNode->..</div>
                                    </li>
                                    <li><a href="/article/2112.htm"
                                           title="nginx利用proxy_cache来缓存文件" target="_blank">nginx利用proxy_cache来缓存文件</a>
                                        <span class="text-muted">cfyme</span>
    <a class="tag" taget="_blank" href="/search/cache/1.htm">cache</a>
                                        <div>user  zhangy users;
    worker_processes 10;
    error_log  /var/vlogs/nginx_error.log  crit;
    pid        /var/vlogs/nginx.pid;
    #Specifies the value for ma</div>
                                    </li>
                                    <li><a href="/article/2239.htm"
                                           title="[JWFD开源工作流]JWFD嵌入式语法分析器负号的使用问题" target="_blank">[JWFD开源工作流]JWFD嵌入式语法分析器负号的使用问题</a>
                                        <span class="text-muted">comsci</span>
    <a class="tag" taget="_blank" href="/search/%E5%B5%8C%E5%85%A5%E5%BC%8F/1.htm">嵌入式</a>
                                        <div> 
        假如我们需要用JWFD的语法分析模块定义一个带负号的方程式,直接在方程式之前添加负号是不正确的,而必须这样做: 
     
        string str01 = "a=3.14;b=2.71;c=0;c-((a*a)+(b*b))" 
     
        定义一个0整数c,然后用这个整数c去</div>
                                    </li>
                                    <li><a href="/article/2366.htm"
                                           title="如何集成支付宝官方文档" target="_blank">如何集成支付宝官方文档</a>
                                        <span class="text-muted">dai_lm</span>
    <a class="tag" taget="_blank" href="/search/android/1.htm">android</a>
                                        <div>官方文档下载地址 
     
    https://b.alipay.com/order/productDetail.htm?productId=2012120700377310&tabId=4#ps-tabinfo-hash 
     
    集成的必要条件 
    1. 需要有自己的Server接收支付宝的消息 
    2. 需要先制作app,然后提交支付宝审核,通过后才能集成 
     
    调试的时候估计会真的扣款,请注意 
    </div>
                                    </li>
                                    <li><a href="/article/2493.htm"
                                           title="应该在什么时候使用Hadoop" target="_blank">应该在什么时候使用Hadoop</a>
                                        <span class="text-muted">datamachine</span>
    <a class="tag" taget="_blank" href="/search/hadoop/1.htm">hadoop</a>
                                        <div>原帖地址:http://blog.chinaunix.net/uid-301743-id-3925358.html 
     
    存档,某些观点与我不谋而合,过度技术化不可取,且hadoop并非万能。 
     
    --------------------------------------------万能的分割线-------------------------------- 
    有人问我,“你在大数据和Hado</div>
                                    </li>
                                    <li><a href="/article/2620.htm"
                                           title="在GridView中对于有外键的字段使用关联模型进行搜索和排序" target="_blank">在GridView中对于有外键的字段使用关联模型进行搜索和排序</a>
                                        <span class="text-muted">dcj3sjt126com</span>
    <a class="tag" taget="_blank" href="/search/yii/1.htm">yii</a>
                                        <div>在GridView中使用关联模型进行搜索和排序 
    首先我们有两个模型它们直接有关联:   
    class Author extends CActiveRecord {
    ...
    }
     
    class Post extends CActiveRecord {
    ...
        function relations() {
            return array(
                '</div>
                                    </li>
                                    <li><a href="/article/2747.htm"
                                           title="使用NSString 的格式化大全" target="_blank">使用NSString 的格式化大全</a>
                                        <span class="text-muted">dcj3sjt126com</span>
    <a class="tag" taget="_blank" href="/search/Objective-C/1.htm">Objective-C</a>
                                        <div>格式定义The format specifiers supported by the NSString formatting methods and CFString formatting functions follow the IEEE printf specification; the specifiers are summarized in Table 1. Note that you c</div>
                                    </li>
                                    <li><a href="/article/2874.htm"
                                           title="使用activeX插件对象object滚动有重影" target="_blank">使用activeX插件对象object滚动有重影</a>
                                        <span class="text-muted">蕃薯耀</span>
    <a class="tag" taget="_blank" href="/search/activeX%E6%8F%92%E4%BB%B6/1.htm">activeX插件</a><a class="tag" taget="_blank" href="/search/%E6%BB%9A%E5%8A%A8%E6%9C%89%E9%87%8D%E5%BD%B1/1.htm">滚动有重影</a>
                                        <div>    
    使用activeX插件对象object滚动有重影       <object style="width:0;" id="abc" classid="CLSID:D3E3970F-2927-9680-BBB4-5D0889909DF6" codebase="activex/OAX339.CAB#</div>
                                    </li>
                                    <li><a href="/article/3001.htm"
                                           title="SpringMVC4零配置" target="_blank">SpringMVC4零配置</a>
                                        <span class="text-muted">hanqunfeng</span>
    <a class="tag" taget="_blank" href="/search/springmvc4/1.htm">springmvc4</a>
                                        <div>基于Servlet3.0规范和SpringMVC4注解式配置方式,实现零xml配置,弄了个小demo,供交流讨论。 
      
      
    项目说明如下: 
    1.db.sql是项目中用到的表,数据库使用的是oracle11g 
    2.该项目使用mvn进行管理,私服为自搭建nexus,项目只用到一个第三方 jar,就是oracle的驱动; 
    3.默认项目为零配置启动,如果需要更改启动方式,请</div>
                                    </li>
                                    <li><a href="/article/3128.htm"
                                           title="《开源框架那点事儿16》:缓存相关代码的演变" target="_blank">《开源框架那点事儿16》:缓存相关代码的演变</a>
                                        <span class="text-muted">j2eetop</span>
    <a class="tag" taget="_blank" href="/search/%E5%BC%80%E6%BA%90%E6%A1%86%E6%9E%B6/1.htm">开源框架</a>
                                        <div>问题引入 
    上次我参与某个大型项目的优化工作,由于系统要求有比较高的TPS,因此就免不了要使用缓冲。 
    该项目中用的缓冲比较多,有MemCache,有Redis,有的还需要提供二级缓冲,也就是说应用服务器这层也可以设置一些缓冲。 
    当然去看相关实现代代码的时候,大致是下面的样子。    
    [java] 
    view plain 
    copy 
    print 
    ?   
     
     public vo</div>
                                    </li>
                                    <li><a href="/article/3255.htm"
                                           title="AngularJS浅析" target="_blank">AngularJS浅析</a>
                                        <span class="text-muted">kvhur</span>
    <a class="tag" taget="_blank" href="/search/JavaScript/1.htm">JavaScript</a>
                                        <div>概念 
     
     AngularJS is a structural framework for dynamic web apps. 
     了解更多详情请见原文链接:http://www.gbtags.com/gb/share/5726.htm 
     Directive 
    扩展html,给html添加声明语句,以便实现自己的需求。对于页面中html元素以ng为前缀的属性名称,ng是angular的命名空间</div>
                                    </li>
                                    <li><a href="/article/3382.htm"
                                           title="架构师之jdk的bug排查(一)---------------split的点号陷阱" target="_blank">架构师之jdk的bug排查(一)---------------split的点号陷阱</a>
                                        <span class="text-muted">nannan408</span>
    <a class="tag" taget="_blank" href="/search/split/1.htm">split</a>
                                        <div>1.前言. 
       jdk1.6的lang包的split方法是有bug的,它不能有效识别A.b.c这种类型,导致截取长度始终是0.而对于其他字符,则无此问题.不知道官方有没有修复这个bug. 
    2.代码 
     
    
    String[] paths = "object.object2.prop11".split("'");
    System.ou</div>
                                    </li>
                                    <li><a href="/article/3509.htm"
                                           title="如何对10亿数据量级的mongoDB作高效的全表扫描" target="_blank">如何对10亿数据量级的mongoDB作高效的全表扫描</a>
                                        <span class="text-muted">quentinXXZ</span>
    <a class="tag" taget="_blank" href="/search/mongodb/1.htm">mongodb</a>
                                        <div>  本文链接: 
    http://quentinXXZ.iteye.com/blog/2149440  
    一、正常情况下,不应该有这种需求 
    首先,大家应该有个概念,标题中的这个问题,在大多情况下是一个伪命题,不应该被提出来。要知道,对于一般较大数据量的数据库,全表查询,这种操作一般情况下是不应该出现的,在做正常查询的时候,如果是范围查询,你至少应该要加上limit。 
    说一下,</div>
                                    </li>
                                    <li><a href="/article/3636.htm"
                                           title="C语言算法之水仙花数" target="_blank">C语言算法之水仙花数</a>
                                        <span class="text-muted">qiufeihu</span>
    <a class="tag" taget="_blank" href="/search/c/1.htm">c</a><a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/1.htm">算法</a>
                                        <div>/**
    * 水仙花数
    */
    #include <stdio.h>
    #define N 10
    int main()
    {
        int x,y,z;
        for(x=1;x<=N;x++)
        	for(y=0;y<=N;y++)
        		for(z=0;z<=N;z++)
        			if(x*100+y*10+z == x*x*x</div>
                                    </li>
                                    <li><a href="/article/3763.htm"
                                           title="JSP指令" target="_blank">JSP指令</a>
                                        <span class="text-muted">wyzuomumu</span>
    <a class="tag" taget="_blank" href="/search/jsp/1.htm">jsp</a>
                                        <div> 
     jsp指令的一般语法格式: <%@ 指令名 属性 =”值 ” %> 
      常用的三种指令: page,include,taglib 
     page指令语法形式: <%@ page 属性 1=”值 1” 属性 2=”值 2”%> 
     include指令语法形式: <%@include file=”relative url”%> (jsp可以通过 include</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>