scrapy 爬取w3school

scrapy是一个从网站中提取结构化数据爬虫框架,简单易用。
内部使用Twisted作为处理网络通信,具有异步特性。

开始构建项目,

scrapy start project my project
#myproject 是项目名称

构建一个框架,

scrapy.cfg
myproject/
    __init__.py
    items.py
    pipelines.py
    settings.py
    spiders/
        __init__.py
        ...

scrapy.cfg 存放的目录被认为是 项目的根目录 。该文件中包含python模块名的字段定义了项目的设置。

定义要爬取的结构化数据

Item 是保存爬取到的数据的容器;其使用方法和python字典类似, 并且提供了额外保护机制来避免拼写错误导致的未定义字段错误。
定义这个字段定义在items.py文件中,

class W3SchoolItem(scrapy.Item):
    # define the fields for your item here like:
    # name = scrapy.Field()

    title = scrapy.Field()
    link = scrapy.Field()
    desc = scrapy.Field()

创建爬虫spider

进入scrapy.cfg 所在目录,运行下面命令,

scrapy genspider myspider
# my spider 是爬虫的名称,可随意定制

编写提取数据的逻辑

进入到spider目录编辑刚刚创建的myspider.py文件

import scrapy
from scrapy.selector import Selector
from w3school.items import W3SchoolItem

class W3schoolSpiderSpider(scrapy.Spider):
    name = "w3school_spider"
    allowed_domains = ["w3school.com.cn"]
    start_urls = ["http://www.w3school.com.cn/xml/xml_syntax.asp"]

    def parse(self, response):
        # 选择器获取页面源码,
        sel = Selector(response)
        # 使用xparh进行筛选,选取所有div中id为navsecond的层所包含的所有div中id为course的ul中ul标签下的,li标签内容,
        sites = sel.xpath('//div[@id="navsecond"]/div[@id="course"]/ul[1]/li')

        # 定义一个items容器
        items = []
        # site的内容包括href为链接,title为标题,
        for site in sites:
            # 成为ie一个item的字典类型
            item = W3SchoolItem()
            # 对每一个site使用xpath抽取出a标签内的text,href,title.
            title = site.xpath('a/text()').extract()
            link = site.xpath('a/@href').extract()
            desc = site.xpath('a/@title').extract()

            item['title'] = [t.encode('utf-8') for t in title]
            item['link'] = [l.encode('utf-8') for l in link]
            item['desc'] = [d.encode('utf-8') for d in desc]
            # 在列表中加入这个字典
            items.append(item)


        return items

选择器Selector

scrapy中可以使用xpathcsshtml中选择数据,

XPath表达式的一些介绍:
1.  /html/head/title: 选择HTML文档中  标签内的  元素
2. /html/head/title/text(): 选择上面提到的 <title> 元素的文字
3. //td: 选择所有的 <td> 元素
4. //div[@class="mine"]: 选择所有具有 class="mine" 属性的 div 元素

</code></pre> 
 <h4>储存数据</h4> 
 <p>在pipelines.py中将取到的item储存在文件中,</p> 
 <pre><code>import codecs
import json


class W3SchoolPipeline(object):
    def __init__(self):
        self.file = codecs.open('w3school_utf-8.json','w',encoding='utf-8')


    def process_item(self, item, spider):
        line = json.dumps(dict(item)) + '\n'

        self.file.write(line.encode('unicode_escape'))
        print(item)

        return item

    def close_spider(self,spider):
        self.file.close()
</code></pre> 
 <h4>配置</h4> 
 <p>在<code>settings.py</code>文件中加入下面代码(其实文件中已经有了只是被注释了)</p> 
 <pre><code>ITEM_PIPELINES = {
   'w3school.pipelines.W3SchoolPipeline': 300,
}
</code></pre> 
 <p>只差最后一步了,</p> 
 <pre><code>scrapy crawl myproejct
</code></pre> 
 <p>等待爬取结束,打开文件就可以看到爬到的数据了!<br> 扫码获取源码,</p> 
 <br> 
 <div class="image-package"> 
  <div class="image-container" style="max-width: 350px; max-height: 280px;"> 
   <div class="image-view"> 
    <a href="http://img.e-com-net.com/image/info10/464c4808a35a4f989c103c7fc70da1d9.jpg" target="_blank"><img src="http://img.e-com-net.com/image/info10/464c4808a35a4f989c103c7fc70da1d9.jpg" width="350" height="280" alt="scrapy 爬取w3school_第1张图片" style="border:1px solid black;"></a> 
   </div> 
  </div> 
  <div class="image-caption">
    PicsArt_03-02-06.50.43.jpg 
  </div> 
 </div> 
</article>
                            </div>
                        </div>
                    </div>
                    <!--PC和WAP自适应版-->
                    <div id="SOHUCS" sid="1232512774131781632"></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">你可能感兴趣的:(scrapy 爬取w3school)</h4>
        <div id="paradigm-article-related">
            <div class="recommend-post mb30">
                <ul class="widget-links">
                    <li><a href="/article/1947131779668307968.htm"
                           title="28.【.NET8 实战--孢子记账--从单体到微服务--转向微服务】--单体转微服务--币种服务(二)" target="_blank">28.【.NET8 实战--孢子记账--从单体到微服务--转向微服务】--单体转微服务--币种服务(二)</a>
                        <span class="text-muted">喵叔哟</span>
<a class="tag" taget="_blank" href="/search/.NET/1.htm">.NET</a><a class="tag" taget="_blank" href="/search/8/1.htm">8</a><a class="tag" taget="_blank" href="/search/.net/1.htm">.net</a><a class="tag" taget="_blank" href="/search/%E5%BE%AE%E6%9C%8D%E5%8A%A1/1.htm">微服务</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a>
                        <div>仅有币种服务还不够,记账应用还需支持不同币种间的转换。要实现这一功能,首先需要获取币种之间的汇率。因此,本文将介绍如何实现汇率的同步。一、汇率数据从何而来?汇率数据无时无刻都在变动,因此需要一个可靠的来源来获取最新的汇率信息。通常可以通过以下几种方式获取:爬取数据:一些专业的金融数据服务商提供汇率数据,可以通过订阅获取。手动输入:对于小型应用,可以手动输入汇率数据,但这不适合大规模或实时更新的应用</div>
                    </li>
                    <li><a href="/article/1947084762682290176.htm"
                           title="爬虫基础理论总结" target="_blank">爬虫基础理论总结</a>
                        <span class="text-muted">qianxun0921</span>

                        <div>一、什么是爬虫爬虫:又称网页蜘蛛,网络机器人,从互联网上自动抓取数据的程序,通俗地讲,就是可以爬取浏览器中看得到的数据二、爬虫的基本流程1、分析网站,得到目标url2、根据url,发起请求,获取页面的HTML源码3、从页面源码中提取数据:a、提取到目标数据,做数据的筛选和持久化存储b、从页面中提取新的url地址,继续执行第二步操作4、爬虫结束:所有的目标url都提取完毕,并且得到数据了,再也没有其</div>
                    </li>
                    <li><a href="/article/1947069106616332288.htm"
                           title="教你解决禁止F12、调试Debugger、丑化JS等反爬" target="_blank">教你解决禁止F12、调试Debugger、丑化JS等反爬</a>
                        <span class="text-muted">Python研究者</span>

                        <div>1前言在爬取数据时,有一些网站设置了反爬(禁止F12、网页调试Debugger、丑化Js),比如下面这几种情况:1.禁止查看源代码imageimage2.网页调试Debugger上面禁止查看网页问题,可以先按F12,再访问网站,但是又有网页调试Debuggerimage经过各种百度之后,可以在浏览器里面关闭Debug调试image这样就点击为蓝色就可以关闭了。3.丑化JS通过查看,可以发现数据是异</div>
                    </li>
                    <li><a href="/article/1947042003808219136.htm"
                           title="Python爬虫实战:从新浪财经爬取股票新闻的完整实现" target="_blank">Python爬虫实战:从新浪财经爬取股票新闻的完整实现</a>
                        <span class="text-muted">Python爬虫项目</span>
<a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E7%88%AC%E8%99%AB/1.htm">爬虫</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/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/php/1.htm">php</a>
                        <div>第一部分:爬虫概述1.1什么是爬虫?爬虫是指通过程序模拟浏览器的行为,自动化地抓取网络上的数据。通过爬虫技术,能够从各种网站上提取信息,广泛应用于数据采集、数据分析、机器学习等领域。1.2新浪财经简介新浪财经是中国最大的财经信息平台之一,提供股票、基金、债券、外汇等多方面的财经新闻和数据。在股票领域,新浪财经提供了大量的股票行情、实时数据、新闻报道等信息,因此爬取新浪财经的股票新闻对于投资分析和决</div>
                    </li>
                    <li><a href="/article/1947036708298092544.htm"
                           title="python爬虫从入门到精通" target="_blank">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/%E7%88%AC%E8%99%AB/1.htm">爬虫</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a>
                        <div>目录一、正确认识Python爬虫二、了解爬虫的本质1.熟悉Python编程2.了解HTML3.了解网络爬虫的基本原理4.学习使用Python爬虫库三、了解非结构化数据的存储1.本地文件2.数据库四、掌握各种技巧,应对特殊网站的反爬措施1.User-Agent2.Cookies3.IP代理五、学习爬虫框架,搭建工程化的爬虫1.创建Scrapy项目2.创建Spider3.编写Spider4.运行Spi</div>
                    </li>
                    <li><a href="/article/1947033807513251840.htm"
                           title="python爬虫入门(小白五分钟从入门到精通)" target="_blank">python爬虫入门(小白五分钟从入门到精通)</a>
                        <span class="text-muted">一百天成为python专家</span>
<a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E7%88%AC%E8%99%AB/1.htm">爬虫</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a><a class="tag" taget="_blank" href="/search/%E7%BD%91%E7%BB%9C%E7%88%AC%E8%99%AB/1.htm">网络爬虫</a><a class="tag" taget="_blank" href="/search/python3.11/1.htm">python3.11</a><a class="tag" taget="_blank" href="/search/ipython/1.htm">ipython</a>
                        <div>网络爬虫的介绍本节主要介绍Pytbon语言中支持网络爬虫的库,此外还将介绍如何获取网站的爬取规则,读者在学习和践过程中一定要严格遵守网站提供的爬取规则。网络爬虫网络爬虫通俗来讲就是使用代码将HTML网页的内容下载到本地的过程。爬取网页主要是为了获取网中的关键信息,例如网页中的数据、图片、视频等。Python语言中提供了多个具有爬虫功能的库,下面将具urHIib库:是Python自带的标准库,无须下</div>
                    </li>
                    <li><a href="/article/1946994711629721600.htm"
                           title="Python批量爬取谷歌原图,2021年最新可用版" target="_blank">Python批量爬取谷歌原图,2021年最新可用版</a>
                        <span class="text-muted"></span>

                        <div>文章目录前言一、环境配置1.安装selenium2.使用正确的谷歌浏览器驱动二、使用步骤1.加载chromedriver.exe2.设置是否开启可视化界面3.输入关键词、下载图片数、图片保存路径三、爬取效果四、完整代码前言作为一名CVer,数据集获取少不了用到数据、图片爬虫技术,谷歌作为全球最大的数据搜索网站,如何从中快速获取大量有用图片数据尤为重要,但是技术更新,很多代码大多就会失效,爬与反爬永</div>
                    </li>
                    <li><a href="/article/1946989291066421248.htm"
                           title="Python爬虫实战:批量下载小红书笔记图片的全流程技术解析" target="_blank">Python爬虫实战:批量下载小红书笔记图片的全流程技术解析</a>
                        <span class="text-muted">Python爬虫项目</span>
<a class="tag" taget="_blank" href="/search/2025%E5%B9%B4%E7%88%AC%E8%99%AB%E5%AE%9E%E6%88%98%E9%A1%B9%E7%9B%AE/1.htm">2025年爬虫实战项目</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E7%88%AC%E8%99%AB/1.htm">爬虫</a><a class="tag" taget="_blank" href="/search/%E7%AC%94%E8%AE%B0/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/%E9%9F%B3%E8%A7%86%E9%A2%91/1.htm">音视频</a><a class="tag" taget="_blank" href="/search/github/1.htm">github</a>
                        <div>1.引言:为什么要爬取小红书笔记图片小红书作为新兴的生活方式分享平台,聚集了大量高质量原创笔记内容,涵盖时尚、美妆、旅游、美食等多领域。笔记中的图片往往是内容的核心,批量下载小红书笔记图片,有助于:内容归档与备份数据分析与用户行为研究图像识别与机器学习训练电商推广及内容再加工但小红书对内容保护做得较好,爬取难度较高,需要结合多技术手段突破。2.小红书平台特点与爬取难点动态加载与API接口多变:页面</div>
                    </li>
                    <li><a href="/article/1946989291984973824.htm"
                           title="基于Python的Google Patents专利数据爬取实战:从入门到精通" target="_blank">基于Python的Google Patents专利数据爬取实战:从入门到精通</a>
                        <span class="text-muted">Python爬虫项目</span>
<a class="tag" taget="_blank" href="/search/2025%E5%B9%B4%E7%88%AC%E8%99%AB%E5%AE%9E%E6%88%98%E9%A1%B9%E7%9B%AE/1.htm">2025年爬虫实战项目</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/%E7%88%AC%E8%99%AB/1.htm">爬虫</a><a class="tag" taget="_blank" href="/search/scrapy/1.htm">scrapy</a><a class="tag" taget="_blank" href="/search/selenium/1.htm">selenium</a>
                        <div>摘要本文将详细介绍如何使用Python构建一个高效的GooglePatents专利爬虫,涵盖最新技术如Playwright浏览器自动化、异步请求处理、反反爬策略等。文章包含完整的代码实现、性能优化技巧以及数据处理方法,帮助读者全面掌握专利数据采集技术。1.引言在当今知识经济时代,专利数据已成为企业技术研发、市场竞争分析的重要资源。GooglePatents作为全球最大的专利数据库之一,收录了来自全</div>
                    </li>
                    <li><a href="/article/1946953613163163648.htm"
                           title="Python爬虫【二十四章】分布式爬虫架构实战:Scrapy-Redis亿级数据抓取方案设计" target="_blank">Python爬虫【二十四章】分布式爬虫架构实战:Scrapy-Redis亿级数据抓取方案设计</a>
                        <span class="text-muted">程序员_CLUB</span>
<a class="tag" taget="_blank" href="/search/Python%E5%85%A5%E9%97%A8%E5%88%B0%E8%BF%9B%E9%98%B6/1.htm">Python入门到进阶</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E7%88%AC%E8%99%AB/1.htm">爬虫</a><a class="tag" taget="_blank" href="/search/%E5%88%86%E5%B8%83%E5%BC%8F/1.htm">分布式</a>
                        <div>目录一、背景:单机爬虫的五大瓶颈二、Scrapy-Redis架构深度解析1.架构拓扑图2.核心组件对比三、环境搭建与核心配置1.基础环境部署2.Scrapy项目配置四、分布式爬虫核心实现1.改造原生Spider2.布隆过滤器集成五、五大性能优化策略1.动态优先级调整2.智能限速策略3.连接池优化4.数据分片存储5.心跳监控系统六、实战:新闻聚合平台数据抓取1.集群架构2.性能指标七、总结1.核心收</div>
                    </li>
                    <li><a href="/article/1946951088544477184.htm"
                           title="分布式爬虫:设计一个分布式爬虫架构来抓取大规模数据" target="_blank">分布式爬虫:设计一个分布式爬虫架构来抓取大规模数据</a>
                        <span class="text-muted">Python爬虫项目</span>
<a class="tag" taget="_blank" href="/search/2025%E5%B9%B4%E7%88%AC%E8%99%AB%E5%AE%9E%E6%88%98%E9%A1%B9%E7%9B%AE/1.htm">2025年爬虫实战项目</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/%E7%88%AC%E8%99%AB/1.htm">爬虫</a><a class="tag" taget="_blank" href="/search/%E6%9E%B6%E6%9E%84/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/redis/1.htm">redis</a><a class="tag" taget="_blank" href="/search/%E6%B5%8B%E8%AF%95%E5%B7%A5%E5%85%B7/1.htm">测试工具</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a>
                        <div>✨引言随着互联网信息的爆炸式增长,单机爬虫面对大规模网站数据抓取显得力不从心。特别是爬取新闻、商品、社交平台等网站时,经常遇到响应慢、IP被封等问题。为了解决这些问题,分布式爬虫系统应运而生。在本文中,我们将手把手带你打造一个基于Scrapy+Redis+Celery+FastAPI+Docker的现代分布式爬虫架构,实现任务调度、去重控制、分布式抓取与结果存储。本文代码均基于Python3.10</div>
                    </li>
                    <li><a href="/article/1946951089626607616.htm"
                           title="Python医疗大数据实战:基于Scrapy-Redis的医院评价数据分布式爬虫设计与实现" target="_blank">Python医疗大数据实战:基于Scrapy-Redis的医院评价数据分布式爬虫设计与实现</a>
                        <span class="text-muted">Python爬虫项目</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/%E7%88%AC%E8%99%AB/1.htm">爬虫</a><a class="tag" taget="_blank" href="/search/selenium/1.htm">selenium</a><a class="tag" taget="_blank" href="/search/scrapy/1.htm">scrapy</a>
                        <div>摘要本文将详细介绍如何使用Python构建一个高效的医院评价数据爬虫系统。我们将从爬虫基础讲起,逐步深入到分布式爬虫架构设计,使用Scrapy框架结合Redis实现分布式爬取,并采用最新的反反爬技术确保数据采集的稳定性。文章包含完整的代码实现、性能优化方案以及数据处理方法,帮助读者掌握医疗大数据采集的核心技术。关键词:Python爬虫、Scrapy-Redis、分布式爬虫、医疗大数据、反反爬技术1</div>
                    </li>
                    <li><a href="/article/1946950457867956224.htm"
                           title="分布式爬虫架构:Scrapy-Redis+Redis集群实现百万级数据采集" target="_blank">分布式爬虫架构:Scrapy-Redis+Redis集群实现百万级数据采集</a>
                        <span class="text-muted">傻啦嘿哟</span>
<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/%E7%88%AC%E8%99%AB/1.htm">爬虫</a><a class="tag" taget="_blank" href="/search/%E6%9E%B6%E6%9E%84/1.htm">架构</a>
                        <div>目录当单机爬虫遇到百万数据量架构设计核心原理分布式任务调度弹性去重机制Redis集群部署实践集群规模计算高可用配置Scrapy项目改造分布式爬虫编写百万级数据优化策略流量控制机制动态IP代理数据存储优化实战案例分析监控与维护集群健康检查日志分析架构演进方向当单机爬虫遇到百万数据量想象你正在搭建一个电商价格监控系统,需要每天抓取十万条商品数据。使用传统Scrapy框架时,单台服务器每天最多只能处理3</div>
                    </li>
                    <li><a href="/article/1946921209610432512.htm"
                           title="爬虫实战案例(两个)" target="_blank">爬虫实战案例(两个)</a>
                        <span class="text-muted">AI 嗯啦</span>
<a class="tag" taget="_blank" href="/search/%E7%88%AC%E8%99%AB/1.htm">爬虫</a>
                        <div>该博客展示两个简单的爬虫实战案例,一个是从人民邮电出版社上爬取其中一个分类的全部图书信息,另一个是在苏宁易购上爬取某个商品的好评和差评,用两个简单的案例讲解爬虫在实际情况下的运作流程一、获取图书信息需求:统计人民邯电出版社官网中与关键词“python”有关的全部图书,包含图书名、价格、作者名等信息,并将获取的信息写入“Excel图书汇总,txt”文件中。流程:配置浏览器并打开目标网站搜索"Pyth</div>
                    </li>
                    <li><a href="/article/1946849232627494912.htm"
                           title="网络爬虫——python爬取豆瓣评论" target="_blank">网络爬虫——python爬取豆瓣评论</a>
                        <span class="text-muted">SSeaflower</span>
<a class="tag" taget="_blank" href="/search/%E7%88%AC%E8%99%AB/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.1网络爬虫定义网络爬虫,又被称为网络蜘蛛(WebSpider)、网络机器人等。它根据网页地址(URL)爬取网页内容,网页地址(URL)就是我们在浏览器中输入的网站链接。例如:https://www.baidu.com;https://movie.douban.com/。网络爬虫不仅能够复制网页信息和下载音视频,还可以做到网站的模拟登录和行为链</div>
                    </li>
                    <li><a href="/article/1946842045721145344.htm"
                           title="python爬虫技术——基础知识、实战" target="_blank">python爬虫技术——基础知识、实战</a>
                        <span class="text-muted">南瓜AI</span>
<a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E7%88%AC%E8%99%AB/1.htm">爬虫</a><a class="tag" taget="_blank" href="/search/scrapy/1.htm">scrapy</a>
                        <div>参考文献:Python爬虫入门(一)(适合初学者)-CSDN博客一、常用爬虫工具包Scrapy语言:Python特点:高效、灵活的爬虫框架,适合大型爬虫项目。BeautifulSoup语言:Python特点:用于解析HTML和XML,简单易用。Selenium语言:Python/Java/C#特点:支持浏览器自动化,适合处理JavaScript渲染的网页。Requests语言:Python特点:简</div>
                    </li>
                    <li><a href="/article/1946691646817103872.htm"
                           title="Python爬虫实战:高效提取与解析JSON格式数据" target="_blank">Python爬虫实战:高效提取与解析JSON格式数据</a>
                        <span class="text-muted">Python爬虫项目</span>
<a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E7%88%AC%E8%99%AB/1.htm">爬虫</a><a class="tag" taget="_blank" href="/search/%E5%AE%BD%E5%BA%A6%E4%BC%98%E5%85%88/1.htm">宽度优先</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/json/1.htm">json</a><a class="tag" taget="_blank" href="/search/%E6%B7%B1%E5%BA%A6%E4%BC%98%E5%85%88/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>1.JSON数据爬取概述在当今互联网时代,JSON(JavaScriptObjectNotation)已成为最流行的数据交换格式之一。相比传统的HTML页面,JSON格式数据具有结构清晰、体积小、解析方便等优势,使得它成为API接口的首选数据格式。1.1为什么选择JSON数据爬取数据结构化:JSON数据本身就是结构化的,不需要像HTML那样进行复杂的解析传输高效:JSON通常比HTML体积小,传输</div>
                    </li>
                    <li><a href="/article/1946597816889569280.htm"
                           title="python分布式爬虫打造搜索引擎--------scrapy实现" target="_blank">python分布式爬虫打造搜索引擎--------scrapy实现</a>
                        <span class="text-muted">weixin_30515513</span>
<a class="tag" taget="_blank" href="/search/%E7%88%AC%E8%99%AB/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%E5%B7%A5%E5%85%B7/1.htm">开发工具</a>
                        <div>http://www.cnblogs.com/jinxiao-pu/p/6706319.html最近在网上学习一门关于scrapy爬虫的课程,觉得还不错,以下是目录还在更新中,我觉得有必要好好的做下笔记,研究研究。第1章课程介绍1-1python分布式爬虫打造搜索引擎简介07:23第2章windows下搭建开发环境2-1pycharm的安装和简单使用10:272-2mysql和navicat的安装</div>
                    </li>
                    <li><a href="/article/1946578902734401536.htm"
                           title="网络爬虫-07" target="_blank">网络爬虫-07</a>
                        <span class="text-muted">YEGE学AI算法</span>
<a class="tag" taget="_blank" href="/search/Python-%E7%BD%91%E7%BB%9C%E7%88%AC%E8%99%AB/1.htm">Python-网络爬虫</a>
                        <div>网络爬虫-07)**Spider06回顾****scrapy框架****完成scrapy项目完整流程****我们必须记住****爬虫项目启动方式****数据持久化存储****Spider07笔记****分布式爬虫****scrapy_redis详解****腾讯招聘分布式改写****机器视觉与tesseract****补充-滑块缺口验证码案例****豆瓣网登录****Fiddler抓包工具****移</div>
                    </li>
                    <li><a href="/article/1946576380791681024.htm"
                           title="爬虫初认识" target="_blank">爬虫初认识</a>
                        <span class="text-muted">老杨玩python</span>
<a class="tag" taget="_blank" href="/search/python/1.htm">python</a>
                        <div>关于爬虫你是否在夜深人静的时候,想看一些让你更睡不着的图片你是否在考试前夕或者面试前夕,想看一些具有针对性的题目和面试题你是否想在杂乱的网络世界中获取你想要的数据什么是爬虫:通过编写程序,模拟浏览器,去互联网上抓取我们想要的数据的过程爬虫的合法性爬虫不被法律禁止快播王欣技术本无罪但有法律风险爬虫干扰被访问网站的正常运营爬取受法律保护的特定类型的数据和信息如何避免法律风险时常优化爬虫程序,避免干扰网</div>
                    </li>
                    <li><a href="/article/1946574112142979072.htm"
                           title="【Python爬虫(26)】Python爬虫进阶:数据清洗与预处理的魔法秘籍" target="_blank">【Python爬虫(26)】Python爬虫进阶:数据清洗与预处理的魔法秘籍</a>
                        <span class="text-muted">奔跑吧邓邓子</span>
<a class="tag" taget="_blank" href="/search/Python%E7%88%AC%E8%99%AB/1.htm">Python爬虫</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E7%88%AC%E8%99%AB/1.htm">爬虫</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E6%B8%85%E6%B4%97/1.htm">数据清洗</a><a class="tag" taget="_blank" href="/search/%E9%A2%84%E5%A4%84%E7%90%86/1.htm">预处理</a>
                        <div>【Python爬虫】专栏简介:本专栏是Python爬虫领域的集大成之作,共100章节。从Python基础语法、爬虫入门知识讲起,深入探讨反爬虫、多线程、分布式等进阶技术。以大量实例为支撑,覆盖网页、图片、音频等各类数据爬取,还涉及数据处理与分析。无论是新手小白还是进阶开发者,都能从中汲取知识,助力掌握爬虫核心技能,开拓技术视野。目录一、数据清洗的重要性二、数据清洗的常见任务2.1去除噪声数据2.2</div>
                    </li>
                    <li><a href="/article/1946430125407006720.htm"
                           title="scrapy 一定要自定义USER_AGENT" target="_blank">scrapy 一定要自定义USER_AGENT</a>
                        <span class="text-muted">魔童转世</span>

                        <div>原因是因为有的网站设置的是不允许爬虫请求,而srapy默认请求是带着一个标识告诉网站我就是爬虫,网站当然不允许爬去了偶然间在一个网站上看到的内容并且也跳过坑USER_AGENT='Mozilla/5.0(WindowsNT10.0;Win64;x64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/65.0.3325.181Safari/537.36'</div>
                    </li>
                    <li><a href="/article/1943934034132398080.htm"
                           title="Python 爬虫实战:视频平台播放量实时监控(含反爬对抗与数据趋势预测)" target="_blank">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/%E7%88%AC%E8%99%AB/1.htm">爬虫</a><a class="tag" taget="_blank" href="/search/%E9%9F%B3%E8%A7%86%E9%A2%91/1.htm">音视频</a>
                        <div>一、引言在数字内容蓬勃发展的当下,视频平台的播放量数据已成为内容创作者、营销人员以及行业分析师手中极为关键的情报资源。它不仅能够实时反映内容的受欢迎程度,更能在竞争分析、营销策略制定以及内容优化等方面发挥不可估量的作用。然而,视频平台为了保护自身数据和用户隐私,往往会设置一系列反爬虫机制,对数据爬取行为进行限制。这就向我们发起了挑战:如何巧妙地突破这些限制,同时精准地捕捉并预测播放量的动态变化趋势</div>
                    </li>
                    <li><a href="/article/1943917893171343360.htm"
                           title="requests的使用" target="_blank">requests的使用</a>
                        <span class="text-muted"></span>

                        <div>一·概念requests作为爬虫的基础库,在我们快速爬取和反爬破解中起到很重要的作用,其中的知识点大概有以下几个方面:二·内容一,request:1-requests.get…get请求获取数据2-requests.post…post请求获取数据二,response:1-response.text.响应体str类型2-response.encoding从HTTPheader中获取响应内容的编码方式</div>
                    </li>
                    <li><a href="/article/1943915626644959232.htm"
                           title="Python爬虫实战:利用最新技术爬取B站直播数据" target="_blank">Python爬虫实战:利用最新技术爬取B站直播数据</a>
                        <span class="text-muted">Python爬虫项目</span>
<a class="tag" taget="_blank" href="/search/2025%E5%B9%B4%E7%88%AC%E8%99%AB%E5%AE%9E%E6%88%98%E9%A1%B9%E7%9B%AE/1.htm">2025年爬虫实战项目</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E7%88%AC%E8%99%AB/1.htm">爬虫</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a><a class="tag" taget="_blank" href="/search/html/1.htm">html</a><a class="tag" taget="_blank" href="/search/%E7%99%BE%E5%BA%A6/1.htm">百度</a>
                        <div>1.B站直播数据爬取概述B站(哔哩哔哩)是中国最大的年轻人文化社区和视频平台之一,其直播业务近年来发展迅速。爬取B站直播数据可以帮助我们分析直播市场趋势、热门主播排行、观众喜好等有价值的信息。常见的B站直播数据类型包括:直播间基本信息(标题、分类、主播信息)实时观看人数与弹幕数据礼物打赏数据直播历史记录分区热门直播数据本文将重点介绍如何获取直播间基本信息和分区热门直播数据。2.环境准备与工具选择2</div>
                    </li>
                    <li><a href="/article/1943915248591368192.htm"
                           title="基于Python的智能公示信息监控爬虫系统开发实战" target="_blank">基于Python的智能公示信息监控爬虫系统开发实战</a>
                        <span class="text-muted">Python爬虫项目</span>
<a class="tag" taget="_blank" href="/search/2025%E5%B9%B4%E7%88%AC%E8%99%AB%E5%AE%9E%E6%88%98%E9%A1%B9%E7%9B%AE/1.htm">2025年爬虫实战项目</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E7%88%AC%E8%99%AB/1.htm">爬虫</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a><a class="tag" taget="_blank" href="/search/%E9%9F%B3%E8%A7%86%E9%A2%91/1.htm">音视频</a><a class="tag" taget="_blank" href="/search/%E6%90%9C%E7%B4%A2%E5%BC%95%E6%93%8E/1.htm">搜索引擎</a><a class="tag" taget="_blank" href="/search/scrapy/1.htm">scrapy</a>
                        <div>摘要本文详细介绍了如何使用Python构建一个高效的公示信息监控爬虫系统。系统采用最新技术栈,包括异步爬取、智能解析、反反爬策略等,能够自动监控各类政府网站、企业公示平台的更新信息。文章从系统设计到具体实现,提供了完整的代码示例和详细的技术解析,帮助读者掌握大规模公示信息采集的核心技术。关键词:Python爬虫、公示监控、信息采集、异步爬取、智能解析1.引言在数字化时代,各类公示信息(如政府采购、</div>
                    </li>
                    <li><a href="/article/1943819542761369600.htm"
                           title="Python爬虫实战:使用最新技术爬取新华网新闻数据" target="_blank">Python爬虫实战:使用最新技术爬取新华网新闻数据</a>
                        <span class="text-muted">Python爬虫项目</span>
<a class="tag" taget="_blank" href="/search/2025%E5%B9%B4%E7%88%AC%E8%99%AB%E5%AE%9E%E6%88%98%E9%A1%B9%E7%9B%AE/1.htm">2025年爬虫实战项目</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E7%88%AC%E8%99%AB/1.htm">爬虫</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a><a class="tag" taget="_blank" href="/search/scrapy/1.htm">scrapy</a><a class="tag" taget="_blank" href="/search/%E9%9F%B3%E8%A7%86%E9%A2%91/1.htm">音视频</a>
                        <div>一、前言在当今信息爆炸的时代,网络爬虫技术已经成为获取互联网数据的重要手段。作为国内权威新闻媒体,新华网每天发布大量高质量的新闻内容,这些数据对于舆情分析、市场研究、自然语言处理等领域具有重要价值。本文将详细介绍如何使用Python最新技术构建一个高效、稳定的新华网新闻爬虫系统。二、爬虫技术选型2.1技术栈选择在构建新华网爬虫时,我们选择了以下技术栈:请求库:httpx(支持HTTP/2,异步请求</div>
                    </li>
                    <li><a href="/article/1943532751152017408.htm"
                           title="从零到一:王者荣耀英雄数据采集与技能图谱异步爬虫实战" target="_blank">从零到一:王者荣耀英雄数据采集与技能图谱异步爬虫实战</a>
                        <span class="text-muted">程序员威哥</span>
<a class="tag" taget="_blank" href="/search/%E7%88%AC%E8%99%AB/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/%E8%87%AA%E5%8A%A8%E5%8C%96/1.htm">自动化</a><a class="tag" taget="_blank" href="/search/scrapy/1.htm">scrapy</a>
                        <div>引言:随着游戏行业的迅猛发展,王者荣耀作为一款深受玩家喜爱的手游,其英雄数据和技能信息成为了爬虫开发者研究的热点之一。通过抓取英雄数据并对技能图谱进行可视化,我们不仅能够更好地理解游戏数据,还可以为游戏爱好者或数据分析师提供一个有价值的数据分析平台。本篇文章将带你一步步实现王者荣耀英雄数据的采集与技能图谱的可视化,并使用异步爬虫技术提高爬取效率。我们将结合实际开发中的需求,深入讲解如何使用异步爬虫</div>
                    </li>
                    <li><a href="/article/1943368621988311040.htm"
                           title="机器学习每周挑战——二手车车辆信息&交易售价数据" target="_blank">机器学习每周挑战——二手车车辆信息&交易售价数据</a>
                        <span class="text-muted">梦想成为一名机器学习高手</span>
<a class="tag" taget="_blank" href="/search/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0/1.htm">机器学习</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>
                        <div>这是数据集的截图目录背景描述数据说明车型对照:燃料类型对照:老规矩,第一步先导入用到的库第二步,读入数据:第三步,数据预处理第四步:对数据的分析第五步:模型建立前的准备工作第六步:多元线性回归模型的建立第七步:随机森林模型的建立问题:背景描述本数据爬取自印度最大的二手车交易平台CARS24,包含8000+该平台上交易车辆的关键评估信息。CARS24成立于2015年,总部位于印度古尔冈,是一个在印度</div>
                    </li>
                    <li><a href="/article/1943363709900484608.htm"
                           title="Julia爬取数据能力及应用场景" target="_blank">Julia爬取数据能力及应用场景</a>
                        <span class="text-muted">q56731523</span>
<a class="tag" taget="_blank" href="/search/julia/1.htm">julia</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a>
                        <div>Julia是一种高性能编程语言,特别适合数值计算和数据分析。然而,关于数据爬取(即网络爬虫)方面,我们需要明确以下几点:虽然它是一门通用编程语言,但它的强项不在于网络爬取(WebScraping)这类任务。而且Julia的生态系统在爬虫方面还不够成熟和丰富。所以说Julia爬取数据后立即进行高性能的数据分析这点还是有一些优势。Julia虽然以高性能数值计算和数据分析见长,但它同样具备网络爬取(We</div>
                    </li>
                                <li><a href="/article/114.htm"
                                       title="戴尔笔记本win8系统改装win7系统" target="_blank">戴尔笔记本win8系统改装win7系统</a>
                                    <span class="text-muted">sophia天雪</span>
<a class="tag" taget="_blank" href="/search/win7/1.htm">win7</a><a class="tag" taget="_blank" href="/search/%E6%88%B4%E5%B0%94/1.htm">戴尔</a><a class="tag" taget="_blank" href="/search/%E6%94%B9%E8%A3%85%E7%B3%BB%E7%BB%9F/1.htm">改装系统</a><a class="tag" taget="_blank" href="/search/win8/1.htm">win8</a>
                                    <div>戴尔win8 系统改装win7 系统详述  
 
第一步:使用U盘制作虚拟光驱: 
        1)下载安装UltraISO:注册码可以在网上搜索。 
        2)启动UltraISO,点击“文件”—》“打开”按钮,打开已经准备好的ISO镜像文 
</div>
                                </li>
                                <li><a href="/article/241.htm"
                                       title="BeanUtils.copyProperties使用笔记" target="_blank">BeanUtils.copyProperties使用笔记</a>
                                    <span class="text-muted">bylijinnan</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a>
                                    <div>BeanUtils.copyProperties VS PropertyUtils.copyProperties 
 
两者最大的区别是: 
BeanUtils.copyProperties会进行类型转换,而PropertyUtils.copyProperties不会。 
既然进行了类型转换,那BeanUtils.copyProperties的速度比不上PropertyUtils.copyProp</div>
                                </li>
                                <li><a href="/article/368.htm"
                                       title="MyEclipse中文乱码问题" target="_blank">MyEclipse中文乱码问题</a>
                                    <span class="text-muted">0624chenhong</span>
<a class="tag" taget="_blank" href="/search/MyEclipse/1.htm">MyEclipse</a>
                                    <div>一、设置新建常见文件的默认编码格式,也就是文件保存的格式。 
在不对MyEclipse进行设置的时候,默认保存文件的编码,一般跟简体中文操作系统(如windows2000,windowsXP)的编码一致,即GBK。 
在简体中文系统下,ANSI 编码代表 GBK编码;在日文操作系统下,ANSI 编码代表 JIS 编码。 
Window-->Preferences-->General -</div>
                                </li>
                                <li><a href="/article/495.htm"
                                       title="发送邮件" target="_blank">发送邮件</a>
                                    <span class="text-muted">不懂事的小屁孩</span>
<a class="tag" taget="_blank" href="/search/send+email/1.htm">send email</a>
                                    <div>  
import org.apache.commons.mail.EmailAttachment;  
import org.apache.commons.mail.EmailException;  
import org.apache.commons.mail.HtmlEmail;  
import org.apache.commons.mail.MultiPartEmail;  
</div>
                                </li>
                                <li><a href="/article/622.htm"
                                       title="动画合集" target="_blank">动画合集</a>
                                    <span class="text-muted">换个号韩国红果果</span>
<a class="tag" taget="_blank" href="/search/html/1.htm">html</a><a class="tag" taget="_blank" href="/search/css/1.htm">css</a>
                                    <div>动画 指一种样式变为另一种样式 keyframes应当始终定义0 100 过程 
1 transition  制作鼠标滑过图片时的放大效果 
 

css
.wrap{
		width: 340px;height: 340px;
		position: absolute;
		top: 30%;
		left: 20%;
		overflow: hidden;
		bor</div>
                                </li>
                                <li><a href="/article/749.htm"
                                       title="网络最常见的攻击方式竟然是SQL注入" target="_blank">网络最常见的攻击方式竟然是SQL注入</a>
                                    <span class="text-muted">蓝儿唯美</span>
<a class="tag" taget="_blank" href="/search/sql%E6%B3%A8%E5%85%A5/1.htm">sql注入</a>
                                    <div>NTT研究表明,尽管SQL注入(SQLi)型攻击记录详尽且为人熟知,但目前网络应用程序仍然是SQLi攻击的重灾区。 
信息安全和风险管理公司NTTCom Security发布的《2015全球智能威胁风险报告》表明,目前黑客攻击网络应用程序方式中最流行的,要数SQLi攻击。报告对去年发生的60亿攻击 行为进行分析,指出SQLi攻击是最常见的网络应用程序攻击方式。全球网络应用程序攻击中,SQLi攻击占</div>
                                </li>
                                <li><a href="/article/876.htm"
                                       title="java笔记2" target="_blank">java笔记2</a>
                                    <span class="text-muted">a-john</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a>
                                    <div>类的封装: 
1,java中,对象就是一个封装体。封装是把对象的属性和服务结合成一个独立的的单位。并尽可能隐藏对象的内部细节(尤其是私有数据) 
2,目的:使对象以外的部分不能随意存取对象的内部数据(如属性),从而使软件错误能够局部化,减少差错和排错的难度。 
3,简单来说,“隐藏属性、方法或实现细节的过程”称为——封装。 
4,封装的特性: 
      4.1设置</div>
                                </li>
                                <li><a href="/article/1003.htm"
                                       title="[Andengine]Error:can't creat bitmap form path “gfx/xxx.xxx”" target="_blank">[Andengine]Error:can't creat bitmap form path “gfx/xxx.xxx”</a>
                                    <span class="text-muted">aijuans</span>
<a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0Android%E9%81%87%E5%88%B0%E7%9A%84%E9%94%99%E8%AF%AF/1.htm">学习Android遇到的错误</a>
                                    <div>        最开始遇到这个错误是很早以前了,以前也没注意,只当是一个不理解的bug,因为所有的texture,textureregion都没有问题,但是就是提示错误。 
 
昨天和美工要图片,本来是要背景透明的png格式,可是她却给了我一个jpg的。说明了之后她说没法改,因为没有png这个保存选项。 
 
我就看了一下,和她要了psd的文件,还好我有一点</div>
                                </li>
                                <li><a href="/article/1130.htm"
                                       title="自己写的一个繁体到简体的转换程序" target="_blank">自己写的一个繁体到简体的转换程序</a>
                                    <span class="text-muted">asialee</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E8%BD%AC%E6%8D%A2/1.htm">转换</a><a class="tag" taget="_blank" href="/search/%E7%B9%81%E4%BD%93/1.htm">繁体</a><a class="tag" taget="_blank" href="/search/filter/1.htm">filter</a><a class="tag" taget="_blank" href="/search/%E7%AE%80%E4%BD%93/1.htm">简体</a>
                                    <div>          今天调研一个任务,基于java的filter实现繁体到简体的转换,于是写了一个demo,给各位博友奉上,欢迎批评指正。 
         实现的思路是重载request的调取参数的几个方法,然后做下转换。 
          </div>
                                </li>
                                <li><a href="/article/1257.htm"
                                       title="android意图和意图监听器技术" target="_blank">android意图和意图监听器技术</a>
                                    <span class="text-muted">百合不是茶</span>
<a class="tag" taget="_blank" href="/search/android/1.htm">android</a><a class="tag" taget="_blank" href="/search/%E6%98%BE%E7%A4%BA%E6%84%8F%E5%9B%BE/1.htm">显示意图</a><a class="tag" taget="_blank" href="/search/%E9%9A%90%E5%BC%8F%E6%84%8F%E5%9B%BE/1.htm">隐式意图</a><a class="tag" taget="_blank" href="/search/%E6%84%8F%E5%9B%BE%E7%9B%91%E5%90%AC%E5%99%A8/1.htm">意图监听器</a>
                                    <div>Intent是在activity之间传递数据;Intent的传递分为显示传递和隐式传递 
  
显式意图:调用Intent.setComponent() 或 Intent.setClassName() 或 Intent.setClass()方法明确指定了组件名的Intent为显式意图,显式意图明确指定了Intent应该传递给哪个组件。 
  
隐式意图;不指明调用的名称,根据设</div>
                                </li>
                                <li><a href="/article/1384.htm"
                                       title="spring3中新增的@value注解" target="_blank">spring3中新增的@value注解</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/spring/1.htm">spring</a><a class="tag" taget="_blank" href="/search/%40Value/1.htm">@Value</a>
                                    <div>        在spring 3.0中,可以通过使用@value,对一些如xxx.properties文件中的文件,进行键值对的注入,例子如下: 
1.首先在applicationContext.xml中加入:    
<beans xmlns="http://www.springframework.</div>
                                </li>
                                <li><a href="/article/1511.htm"
                                       title="Jboss启用CXF日志" target="_blank">Jboss启用CXF日志</a>
                                    <span class="text-muted">sunjing</span>
<a class="tag" taget="_blank" href="/search/log/1.htm">log</a><a class="tag" taget="_blank" href="/search/jboss/1.htm">jboss</a><a class="tag" taget="_blank" href="/search/CXF/1.htm">CXF</a>
                                    <div>1. 在standalone.xml配置文件中添加system-properties: 
    <system-properties>        <property name="org.apache.cxf.logging.enabled" value=&</div>
                                </li>
                                <li><a href="/article/1638.htm"
                                       title="【Hadoop三】Centos7_x86_64部署Hadoop集群之编译Hadoop源代码" target="_blank">【Hadoop三】Centos7_x86_64部署Hadoop集群之编译Hadoop源代码</a>
                                    <span class="text-muted">bit1129</span>
<a class="tag" taget="_blank" href="/search/centos/1.htm">centos</a>
                                    <div>  编译必需的软件 
 
 Firebugs3.0.0 
 Maven3.2.3 
 Ant 
 JDK1.7.0_67 
 protobuf-2.5.0 
 Hadoop 2.5.2源码包 
 
  
  
  
 
 Firebugs3.0.0 
 
  
http://sourceforge.jp/projects/sfnet_findbug</div>
                                </li>
                                <li><a href="/article/1765.htm"
                                       title="struts2验证框架的使用和扩展" target="_blank">struts2验证框架的使用和扩展</a>
                                    <span class="text-muted">白糖_</span>
<a class="tag" taget="_blank" href="/search/%E6%A1%86%E6%9E%B6/1.htm">框架</a><a class="tag" taget="_blank" href="/search/xml/1.htm">xml</a><a class="tag" taget="_blank" href="/search/bean/1.htm">bean</a><a class="tag" taget="_blank" href="/search/struts/1.htm">struts</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>
                                    <div>struts2能够对前台提交的表单数据进行输入有效性校验,通常有两种方式: 
1、在Action类中通过validatexx方法验证,这种方式很简单,在此不再赘述; 
2、通过编写xx-validation.xml文件执行表单验证,当用户提交表单请求后,struts会优先执行xml文件,如果校验不通过是不会让请求访问指定action的。 
本文介绍一下struts2通过xml文件进行校验的方法并说</div>
                                </li>
                                <li><a href="/article/1892.htm"
                                       title="记录-感悟" target="_blank">记录-感悟</a>
                                    <span class="text-muted">braveCS</span>
<a class="tag" taget="_blank" href="/search/%E6%84%9F%E6%82%9F/1.htm">感悟</a>
                                    <div>再翻翻以前写的感悟,有时会发现自己很幼稚,也会让自己找回初心。 
  
2015-1-11  1. 能在工作之余学习感兴趣的东西已经很幸福了; 
2. 要改变自己,不能这样一直在原来区域,要突破安全区舒适区,才能提高自己,往好的方面发展; 
3. 多反省多思考;要会用工具,而不是变成工具的奴隶; 
4. 一天内集中一个定长时间段看最新资讯和偏流式博</div>
                                </li>
                                <li><a href="/article/2019.htm"
                                       title="编程之美-数组中最长递增子序列" target="_blank">编程之美-数组中最长递增子序列</a>
                                    <span class="text-muted">bylijinnan</span>
<a class="tag" taget="_blank" href="/search/%E7%BC%96%E7%A8%8B%E4%B9%8B%E7%BE%8E/1.htm">编程之美</a>
                                    <div>
import java.util.Arrays;
import java.util.Random;

public class LongestAccendingSubSequence {

	/**
	 * 编程之美 数组中最长递增子序列 
	 * 书上的解法容易理解
	 * 另一方法书上没有提到的是,可以将数组排序(由小到大)得到新的数组,
	 * 然后求排序后的数组与原数</div>
                                </li>
                                <li><a href="/article/2146.htm"
                                       title="读书笔记5" target="_blank">读书笔记5</a>
                                    <span class="text-muted">chengxuyuancsdn</span>
<a class="tag" taget="_blank" href="/search/%E9%87%8D%E5%A4%8D%E6%8F%90%E4%BA%A4/1.htm">重复提交</a><a class="tag" taget="_blank" href="/search/struts2%E7%9A%84token%E9%AA%8C%E8%AF%81/1.htm">struts2的token验证</a>
                                    <div>1、重复提交 
2、struts2的token验证 
3、用response返回xml时的注意 
 
1、重复提交 
(1)应用场景 
(1-1)点击提交按钮两次。 
(1-2)使用浏览器后退按钮重复之前的操作,导致重复提交表单。 
(1-3)刷新页面 
(1-4)使用浏览器历史记录重复提交表单。 
(1-5)浏览器重复的 HTTP 请求。 
(2)解决方法 
(2-1)禁掉提交按钮 
(2-2)</div>
                                </li>
                                <li><a href="/article/2273.htm"
                                       title="[时空与探索]全球联合进行第二次费城实验的可能性" target="_blank">[时空与探索]全球联合进行第二次费城实验的可能性</a>
                                    <span class="text-muted">comsci</span>

                                    <div> 
 
     二次世界大战前后,由爱因斯坦参加的一次在海军舰艇上进行的物理学实验 -费城实验 
  至今给我们大家留下很多迷团..... 
 
     关于费城实验的详细过程,大家可以在网络上搜索一下,我这里就不详细描述了 
 
     在这里,我的意思是,现在</div>
                                </li>
                                <li><a href="/article/2400.htm"
                                       title="easy connect 之 ORA-12154: TNS: 无法解析指定的连接标识符" target="_blank">easy connect 之 ORA-12154: TNS: 无法解析指定的连接标识符</a>
                                    <span class="text-muted">daizj</span>
<a class="tag" taget="_blank" href="/search/oracle/1.htm">oracle</a><a class="tag" taget="_blank" href="/search/ORA-12154/1.htm">ORA-12154</a>
                                    <div>用easy connect连接出现“tns无法解析指定的连接标示符”的错误,如下: 
C:\Users\Administrator>sqlplus username/pwd@192.168.0.5:1521/orcl 
SQL*Plus: Release 10.2.0.1.0 – Production on 星期一 5月 21 18:16:20 2012 
Copyright (c) 198</div>
                                </li>
                                <li><a href="/article/2527.htm"
                                       title="简单排序:归并排序" target="_blank">简单排序:归并排序</a>
                                    <span class="text-muted">dieslrae</span>
<a class="tag" taget="_blank" href="/search/%E5%BD%92%E5%B9%B6%E6%8E%92%E5%BA%8F/1.htm">归并排序</a>
                                    <div>
    public void mergeSort(int[] array){
        int temp = array.length/2;
        
        if(temp == 0){
            return;
        }
        
        int[] a = new int[temp];
        int</div>
                                </li>
                                <li><a href="/article/2654.htm"
                                       title="C语言中字符串的\0和空格" target="_blank">C语言中字符串的\0和空格</a>
                                    <span class="text-muted">dcj3sjt126com</span>
<a class="tag" taget="_blank" href="/search/c/1.htm">c</a>
                                    <div>   \0 为字符串结束符,比如说: 
                      abcd (空格)cdefg; 
存入数组时,空格作为一个字符占有一个字节的空间,我们</div>
                                </li>
                                <li><a href="/article/2781.htm"
                                       title="解决Composer国内速度慢的办法" target="_blank">解决Composer国内速度慢的办法</a>
                                    <span class="text-muted">dcj3sjt126com</span>
<a class="tag" taget="_blank" href="/search/Composer/1.htm">Composer</a>
                                    <div>用法: 
有两种方式启用本镜像服务: 
1 将以下配置信息添加到 Composer 的配置文件 config.json 中(系统全局配置)。见“例1” 
2 将以下配置信息添加到你的项目的 composer.json 文件中(针对单个项目配置)。见“例2” 
为了避免安装包的时候都要执行两次查询,切记要添加禁用 packagist 的设置,如下      1   2   3   4   5    </div>
                                </li>
                                <li><a href="/article/2908.htm"
                                       title="高效可伸缩的结果缓存" target="_blank">高效可伸缩的结果缓存</a>
                                    <span class="text-muted">shuizhaosi888</span>
<a class="tag" taget="_blank" href="/search/%E9%AB%98%E6%95%88%E5%8F%AF%E4%BC%B8%E7%BC%A9%E7%9A%84%E7%BB%93%E6%9E%9C%E7%BC%93%E5%AD%98/1.htm">高效可伸缩的结果缓存</a>
                                    <div>/**
 * 要执行的算法,返回结果v
 */
public interface Computable<A, V> {
	public V comput(final A arg);

}
 
  
/**
 * 用于缓存数据
 */
public class Memoizer<A, V> implements Computable<A, </div>
                                </li>
                                <li><a href="/article/3035.htm"
                                       title="三点定位的算法" target="_blank">三点定位的算法</a>
                                    <span class="text-muted">haoningabc</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>三点定位, 
已知a,b,c三个顶点的x,y坐标 
和三个点都z坐标的距离,la,lb,lc 
 
求z点的坐标 
原理就是围绕a,b,c 三个点画圆,三个圆焦点的部分就是所求 
但是,由于三个点的距离可能不准,不一定会有结果, 
所以是三个圆环的焦点,环的宽度开始为0,没有取到则加1 
运行 
gcc -lm test.c 
test.c代码如下 
 

#include "stdi</div>
                                </li>
                                <li><a href="/article/3162.htm"
                                       title="epoll使用详解" target="_blank">epoll使用详解</a>
                                    <span class="text-muted">jimmee</span>
<a class="tag" taget="_blank" href="/search/c/1.htm">c</a><a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a><a class="tag" taget="_blank" href="/search/%E6%9C%8D%E5%8A%A1%E7%AB%AF%E7%BC%96%E7%A8%8B/1.htm">服务端编程</a><a class="tag" taget="_blank" href="/search/epoll/1.htm">epoll</a>
                                    <div>epoll - I/O event notification facility在linux的网络编程中,很长的时间都在使用select来做事件触发。在linux新的内核中,有了一种替换它的机制,就是epoll。相比于select,epoll最大的好处在于它不会随着监听fd数目的增长而降低效率。因为在内核中的select实现中,它是采用轮询来处理的,轮询的fd数目越多,自然耗时越多。并且,在linu</div>
                                </li>
                                <li><a href="/article/3289.htm"
                                       title="Hibernate对Enum的映射的基本使用方法" target="_blank">Hibernate对Enum的映射的基本使用方法</a>
                                    <span class="text-muted">linzx0212</span>
<a class="tag" taget="_blank" href="/search/enum/1.htm">enum</a><a class="tag" taget="_blank" href="/search/Hibernate/1.htm">Hibernate</a>
                                    <div>  
枚举 
  
/**
 * 性别枚举
 */
public enum Gender {

    MALE(0), FEMALE(1), OTHER(2);

    private Gender(int i) {
        this.i = i;
    }

    private int i;

    public int getI</div>
                                </li>
                                <li><a href="/article/3416.htm"
                                       title="第10章 高级事件(下)" target="_blank">第10章 高级事件(下)</a>
                                    <span class="text-muted">onestopweb</span>
<a class="tag" taget="_blank" href="/search/%E4%BA%8B%E4%BB%B6/1.htm">事件</a>
                                    <div>index.html 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/</div>
                                </li>
                                <li><a href="/article/3543.htm"
                                       title="孙子兵法" target="_blank">孙子兵法</a>
                                    <span class="text-muted">roadrunners</span>
<a class="tag" taget="_blank" href="/search/%E5%AD%99%E5%AD%90/1.htm">孙子</a><a class="tag" taget="_blank" href="/search/%E5%85%B5%E6%B3%95/1.htm">兵法</a>
                                    <div>始计第一 
 
孙子曰: 
兵者,国之大事,死生之地,存亡之道,不可不察也。 
故经之以五事,校之以计,而索其情:一曰道,二曰天,三曰地,四曰将,五 
曰法。道者,令民于上同意,可与之死,可与之生,而不危也;天者,阴阳、寒暑 
、时制也;地者,远近、险易、广狭、死生也;将者,智、信、仁、勇、严也;法 
者,曲制、官道、主用也。凡此五者,将莫不闻,知之者胜,不知之者不胜。故校 
之以计,而索其情,曰</div>
                                </li>
                                <li><a href="/article/3670.htm"
                                       title="MySQL双向复制" target="_blank">MySQL双向复制</a>
                                    <span class="text-muted">tomcat_oracle</span>
<a class="tag" taget="_blank" href="/search/mysql/1.htm">mysql</a>
                                    <div>本文包括: 
 
  主机配置  
  从机配置  
  建立主-从复制  
  建立双向复制  
 
  背景 
按照以下简单的步骤: 
参考一下: 
 
  在机器A配置主机(192.168.1.30)  
  在机器B配置从机(192.168.1.29)  
  我们可以使用下面的步骤来实现这一点  
 
  
步骤1:机器A设置主机 
 
  在主机中打开配置文件 , </div>
                                </li>
                                <li><a href="/article/3797.htm"
                                       title="zoj 3822 Domination(dp)" target="_blank">zoj 3822 Domination(dp)</a>
                                    <span class="text-muted">阿尔萨斯</span>
<a class="tag" taget="_blank" href="/search/Mina/1.htm">Mina</a>
                                    <div> 题目链接:zoj 3822 Domination 
 题目大意:给定一个N∗M的棋盘,每次任选一个位置放置一枚棋子,直到每行每列上都至少有一枚棋子,问放置棋子个数的期望。 
 解题思路:大白书上概率那一张有一道类似的题目,但是因为时间比较久了,还是稍微想了一下。dp[i][j][k]表示i行j列上均有至少一枚棋子,并且消耗k步的概率(k≤i∗j),因为放置在i+1~n上等价与放在i+1行上,同理</div>
                                </li>
                </ul>
            </div>
        </div>
    </div>

<div>
    <div class="container">
        <div class="indexes">
            <strong>按字母分类:</strong>
            <a href="/tags/A/1.htm" target="_blank">A</a><a href="/tags/B/1.htm" target="_blank">B</a><a href="/tags/C/1.htm" target="_blank">C</a><a
                href="/tags/D/1.htm" target="_blank">D</a><a href="/tags/E/1.htm" target="_blank">E</a><a href="/tags/F/1.htm" target="_blank">F</a><a
                href="/tags/G/1.htm" target="_blank">G</a><a href="/tags/H/1.htm" target="_blank">H</a><a href="/tags/I/1.htm" target="_blank">I</a><a
                href="/tags/J/1.htm" target="_blank">J</a><a href="/tags/K/1.htm" target="_blank">K</a><a href="/tags/L/1.htm" target="_blank">L</a><a
                href="/tags/M/1.htm" target="_blank">M</a><a href="/tags/N/1.htm" target="_blank">N</a><a href="/tags/O/1.htm" target="_blank">O</a><a
                href="/tags/P/1.htm" target="_blank">P</a><a href="/tags/Q/1.htm" target="_blank">Q</a><a href="/tags/R/1.htm" target="_blank">R</a><a
                href="/tags/S/1.htm" target="_blank">S</a><a href="/tags/T/1.htm" target="_blank">T</a><a href="/tags/U/1.htm" target="_blank">U</a><a
                href="/tags/V/1.htm" target="_blank">V</a><a href="/tags/W/1.htm" target="_blank">W</a><a href="/tags/X/1.htm" target="_blank">X</a><a
                href="/tags/Y/1.htm" target="_blank">Y</a><a href="/tags/Z/1.htm" target="_blank">Z</a><a href="/tags/0/1.htm" target="_blank">其他</a>
        </div>
    </div>
</div>
<footer id="footer" class="mb30 mt30">
    <div class="container">
        <div class="footBglm">
            <a target="_blank" href="/">首页</a> -
            <a target="_blank" href="/custom/about.htm">关于我们</a> -
            <a target="_blank" href="/search/Java/1.htm">站内搜索</a> -
            <a target="_blank" href="/sitemap.txt">Sitemap</a> -
            <a target="_blank" href="/custom/delete.htm">侵权投诉</a>
        </div>
        <div class="copyright">版权所有 IT知识库 CopyRight © 2000-2050 E-COM-NET.COM , All Rights Reserved.
<!--            <a href="https://beian.miit.gov.cn/" rel="nofollow" target="_blank">京ICP备09083238号</a><br>-->
        </div>
    </div>
</footer>
<!-- 代码高亮 -->
<script type="text/javascript" src="/static/syntaxhighlighter/scripts/shCore.js"></script>
<script type="text/javascript" src="/static/syntaxhighlighter/scripts/shLegacy.js"></script>
<script type="text/javascript" src="/static/syntaxhighlighter/scripts/shAutoloader.js"></script>
<link type="text/css" rel="stylesheet" href="/static/syntaxhighlighter/styles/shCoreDefault.css"/>
<script type="text/javascript" src="/static/syntaxhighlighter/src/my_start_1.js"></script>





</body>

</html>