mac 环境下 Scrapy 入门

文章目录

    • 安装
    • 步骤
      • 新建爬虫项目 - scrapy startproject
      • 明确数据目标 - disease/items.py
      • 制作网页爬虫 - spiders/MedicaldataSpider.py
          • 创建爬虫
          • 配置爬虫
          • 取数据
          • 提取其他信息
          • 保存数据


安装

sudo pip install scrapy

python3环境配置


步骤

  • 新建爬虫项目 (scrapy startproject name)
  • 明确数据目标 (编写 items.py)
  • 制作网页爬虫 (spiders/xxspider.py)
  • 存储爬取内容 (pipelines.py)

新建爬虫项目 - scrapy startproject

终端进入项目目录

scrapy startproject spiderName
spiderName - 项目名称

系统创建一个 spiderName 文件夹,目录结构:

spiderName/
    scrapy.cfg                项目配置文件
    spiderName/               Python模块 - 从这里引用代码
        __init__.py
        items.py              目标文件
        pipelines.py
        settings.py           设置文件
        spiders/              存储爬虫代码目录
            __init__.py
            ...

明确数据目标 - disease/items.py

目标:抓取 http://yao.xywy.com/class/4-0-0-1-0-1.htm 网站里的药品的名称、生产公司和功能主治

打开 disease 目录下的 items.py

  • Item 定义结构化数据字段,用来保存爬取到的数据
    scrapy.Item 创建一个类
    scrapy.Field 定义类型类属性

创建一个 MedicaldataItem 类,构建 item 模型

import scrapy

class MedicaldataItem(scrapy.Item):
    # define the fields for your item here like:
    # name = scrapy.Field()
    name = scrapy.Field()  # 药品名称
    company = scrapy.Field()  # 生产公司
    function = scrapy.Field()  # 功能主治
    


制作网页爬虫 - spiders/MedicaldataSpider.py

爬虫功能 : 爬 => 取


创建爬虫

创建一个名为Medicaldata的爬虫,并指定爬取域的范围:
cd disease

scrapy genspider Medicaldata "http://yao.xywy.com"

打开 disease/spider目录里的 Medicaldata.py,默认增加了下列代码:

import scrapy

class MedicaldataSpider(scrapy.Spider):
    name = 'Medicaldata'
    allowed_domains = ['yao.xywy.com']
    start_urls = ['http://yao.xywy.com']

    def parse(self, response):
        pass

用scrapy.Spider类创建一个子类来建立一个Spider,其下有三个强制的属性 和 一个方法。

  • name = “”
    爬虫的唯一识别名称

  • allow_domains = []
    搜索的域名范围
    规定爬虫只爬取这个域名下的网页,不存在的URL会被忽略。

  • start_urls = ()
    爬取起始URL
    爬虫从这里开始抓取数据,所以,第一次下载的数据将会从这些urls开始。其他子URL将会从这些元祖URL中继承性生成。

  • parse(self, response)
    解析的方法
    URL传回Response对象作为唯一参数,用来

    1. 解析返回的网页数据(response.body)
    2. 提取结构化数据(生成item)
    3. 生成需要下一页的URL请求。


配置爬虫

将start_urls的值修改为需要爬取的第一个url

start_urls = ['http://yao.xywy.com/class/4-0-0-1-0-1.htm']

修改parse()方法

def parse(self, response):
    filename = "drug.html"
    open(filename, 'wb').write(response.body)

原文为 open(filename, ‘w’).write(response.body)
报错
TypeError: write() argument must be str, not bytes
python3 w为写字符,wb为二进制

参考:https://blog.csdn.net/kingyuan666/article/details/81214954

在disease目录下执行:
scrapy crawl Medicaldata

[scrapy] INFO: Spider closed (finished) 执行完成
drug.html 中为爬取网页的源代码



取数据

爬取整个网页完毕,接下来进行取数据

获取 xpath 地址
利用 Chrome
右键 => 检查 => copy => copy xpath

mac 环境下 Scrapy 入门_第1张图片
xpath:
/html/body/div[6]/div[2]/div[1]/a

XPath 表达式简例

/html/head/title: 选择HTML文档中  标签内的  元素
/html/head/title/text(): 选择上面提到的 <title> 元素的文字
//td: 选择所有的 <td> 元素
//div[@class="mine"]: 选择所有具有 class="mine" 属性的 div 元素
</code></pre> 
  <p>举例 - 读取网站 http://yao.xywy.com/ 的网站标题,</p> 
  <p>Medicaldata.py 文件代码如下:</p> 
  <pre><code class="prism language-py"><span class="token keyword">import</span> scrapy

<span class="token keyword">class</span> <span class="token class-name">MedicaldataSpider</span><span class="token punctuation">(</span>scrapy<span class="token punctuation">.</span>Spider<span class="token punctuation">)</span><span class="token punctuation">:</span>
    name <span class="token operator">=</span> <span class="token string">'Medicaldata'</span>
    allowed_domains <span class="token operator">=</span> <span class="token punctuation">[</span><span class="token string">'yao.xywy.com'</span><span class="token punctuation">]</span>
    start_urls <span class="token operator">=</span> <span class="token punctuation">[</span><span class="token string">'http://yao.xywy.com/class/4-0-0-1-0-1.htm'</span><span class="token punctuation">]</span>

    <span class="token keyword">def</span> <span class="token function">parse</span><span class="token punctuation">(</span>self<span class="token punctuation">,</span> response<span class="token punctuation">)</span><span class="token punctuation">:</span>
        <span class="token comment"># 获取网站标题</span>
        context <span class="token operator">=</span> response<span class="token punctuation">.</span>xpath<span class="token punctuation">(</span><span class="token string">'/html/head/title/text()'</span><span class="token punctuation">)</span>
        
        <span class="token comment"># 提取网站标题</span>
        title <span class="token operator">=</span> context<span class="token punctuation">.</span>extract_first<span class="token punctuation">(</span><span class="token punctuation">)</span>
        <span class="token keyword">print</span><span class="token punctuation">(</span>title<span class="token punctuation">)</span>
        <span class="token keyword">pass</span>
</code></pre> 
  <p>执行以下命令:</p> 
  <p><code>scrapy crawl Medicaldata</code><br> …<br> …<br> 中西药品_寻医问药药品网<br> …<br> …</p> 
  <br> 
  <hr> 
  <h5>提取其他信息</h5> 
  <p>引入在 disease/items.py 里定义的 MedicaldataItem 类<br> 然后将得到的数据封装到一个 MedicaldataItem 对象中</p> 
  <blockquote> 
   <p>注意缩进</p> 
  </blockquote> 
  <pre><code class="prism language-py"><span class="token keyword">from</span> disease<span class="token punctuation">.</span>items <span class="token keyword">import</span> MedicaldataItem

<span class="token keyword">def</span> <span class="token function">parse</span><span class="token punctuation">(</span>self<span class="token punctuation">,</span> response<span class="token punctuation">)</span><span class="token punctuation">:</span>
        
        <span class="token comment"># 存放疾病信息的集合</span>
        items <span class="token operator">=</span> <span class="token punctuation">[</span><span class="token punctuation">]</span>
        
        <span class="token keyword">for</span> each <span class="token keyword">in</span> response<span class="token punctuation">.</span>xpath<span class="token punctuation">(</span><span class="token string">'//div[@class="h-drugs-item"]'</span><span class="token punctuation">)</span><span class="token punctuation">:</span>
            <span class="token comment"># 将我们得到的数据封装到一个 `ItcastItem` 对象</span>
            item <span class="token operator">=</span> MedicaldataItem<span class="token punctuation">(</span><span class="token punctuation">)</span>
            <span class="token comment">#extract()方法返回的都是unicode字符串</span>
            name <span class="token operator">=</span> each<span class="token punctuation">.</span>xpath<span class="token punctuation">(</span><span class="token string">'div/a/@target'</span><span class="token punctuation">)</span><span class="token punctuation">.</span>extract<span class="token punctuation">(</span><span class="token punctuation">)</span>
            company <span class="token operator">=</span> each<span class="token punctuation">.</span>xpath<span class="token punctuation">(</span><span class="token string">'div/span/text()'</span><span class="token punctuation">)</span><span class="token punctuation">.</span>extract<span class="token punctuation">(</span><span class="token punctuation">)</span>
            function <span class="token operator">=</span> each<span class="token punctuation">.</span>xpath<span class="token punctuation">(</span><span class="token string">'div[2]/div[2]/div[2]/text()'</span><span class="token punctuation">)</span><span class="token punctuation">.</span>extract<span class="token punctuation">(</span><span class="token punctuation">)</span>
            
            <span class="token comment">#xpath返回的是包含一个元素的列表</span>
            item<span class="token punctuation">[</span><span class="token string">'name'</span><span class="token punctuation">]</span> <span class="token operator">=</span> name<span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span>
            item<span class="token punctuation">[</span><span class="token string">'company'</span><span class="token punctuation">]</span> <span class="token operator">=</span> company<span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span>
            item<span class="token punctuation">[</span><span class="token string">'function'</span><span class="token punctuation">]</span> <span class="token operator">=</span> function<span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span>
            
            items<span class="token punctuation">.</span>append<span class="token punctuation">(</span>item<span class="token punctuation">)</span>

        <span class="token comment"># 直接返回最后数据</span>
        <span class="token keyword">return</span> items

</code></pre> 
  <br> 
  <hr> 
  <h5>保存数据</h5> 
  <p>-o 输出指定格式的文件,命令如下:</p> 
  <ul> 
   <li> <p>json 格式<br> <code>scrapy crawl Medicaldata -o drug.json</code></p> </li> 
   <li> <p>json lines格式,默认为Unicode编码<br> <code>scrapy crawl Medicaldata -o drug.json</code></p> </li> 
   <li> <p>csv 逗号表达式,可用Excel打开<br> <code>scrapy crawl Medicaldata -o drug.csv</code></p> </li> 
   <li> <p>xml格式<br> <code>scrapy crawl Medicaldata -o drug.xml</code></p> </li> 
  </ul> 
  <p>ERROR<br> scrapy 爬虫返回 json格式内容为 unicode 编码<br> <a href="http://img.e-com-net.com/image/info8/a45e30ce5b584cf6b709db09ae2cdebb.jpg" target="_blank"><img src="http://img.e-com-net.com/image/info8/a45e30ce5b584cf6b709db09ae2cdebb.jpg" alt="mac 环境下 Scrapy 入门_第2张图片" width="650" height="178" style="border:1px solid black;"></a><br> <em>解决方案</em><br> 在settings.py文件中增加一行,导出时强制为’utf-8’即可转换为中文<br> <code>FEED_EXPORT_ENCODING = 'utf-8'</code><br> http://www.cnblogs.com/mrtop/p/10185507.html</p> 
  <p>爬取数据成功:<br> <a href="http://img.e-com-net.com/image/info8/43539fa8b6984dbea4f006bba8b423e5.jpg" target="_blank"><img src="http://img.e-com-net.com/image/info8/43539fa8b6984dbea4f006bba8b423e5.jpg" alt="mac 环境下 Scrapy 入门_第3张图片" width="650" height="186" style="border:1px solid black;"></a></p> 
 </div> 
</div>
                            </div>
                        </div>
                    </div>
                    <!--PC和WAP自适应版-->
                    <div id="SOHUCS" sid="1306301449814183936"></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,mac)</h4>
        <div id="paradigm-article-related">
            <div class="recommend-post mb30">
                <ul class="widget-links">
                    <li><a href="/article/1834914358598135808.htm"
                           title="世界七大经济体" target="_blank">世界七大经济体</a>
                        <span class="text-muted">方塘之声</span>

                        <div>1.美国是世界第一大经济体,2019年的GDP总量为21.41万亿美元,市值最高的公司是苹果,最新市值为1.71万亿美元,主营业务是一Mac、iPhone为主的电子消费产品。2.我国是世界第二大经济体,2019年的GDP总量为15.54万亿美元,市值最高的公司是阿里,最新市值为6891亿美元,主营业务是电商、云计算与本地服务。3.日本是世界第三大经济体,2019年的GDP总量为5.36万亿美元,市</div>
                    </li>
                    <li><a href="/article/1834895210853789696.htm"
                           title="“ssh_dispatch_run_fatal: Connection to x.x.x.x port 22: message authentication code incorrect“报错解决方法" target="_blank">“ssh_dispatch_run_fatal: Connection to x.x.x.x port 22: message authentication code incorrect“报错解决方法</a>
                        <span class="text-muted">守月满空山雪照窗</span>
<a class="tag" taget="_blank" href="/search/Linux/1.htm">Linux</a><a class="tag" taget="_blank" href="/search/ssh/1.htm">ssh</a><a class="tag" taget="_blank" href="/search/%E8%BF%90%E7%BB%B4/1.htm">运维</a>
                        <div>ssh远程连接:sshuser@192.168.xx.xx报错如下:CorruptedMAConinput.ssh_dispatch_run_fatal:Connectiontox.x.x.xport22:messageauthenticationcodeincorrect执行如下命令:ssh-Qmac可以看到:hmac-sha1hmac-sha1-96hmac-sha2-256hmac-sha2</div>
                    </li>
                    <li><a href="/article/1834849076785541120.htm"
                           title="鸿萌数据恢复服务:如何恢复 Mac 系统中被擦除的文件?" target="_blank">鸿萌数据恢复服务:如何恢复 Mac 系统中被擦除的文件?</a>
                        <span class="text-muted">鸿萌数据安全</span>
<a class="tag" taget="_blank" href="/search/macos/1.htm">macos</a><a class="tag" taget="_blank" href="/search/%E6%81%A2%E5%A4%8D%E8%A2%AB%E6%93%A6%E9%99%A4%E7%9A%84mac%E6%96%87%E4%BB%B6/1.htm">恢复被擦除的mac文件</a><a class="tag" taget="_blank" href="/search/%E6%93%A6%E9%99%A4mac%E6%96%87%E4%BB%B6/1.htm">擦除mac文件</a><a class="tag" taget="_blank" href="/search/mac%E6%95%B0%E6%8D%AE%E6%81%A2%E5%A4%8D/1.htm">mac数据恢复</a>
                        <div>天津鸿萌科贸发展有限公司从事数据安全服务二十余年,致力于为各领域客户提供专业的数据备份、数据恢复解决方案与服务,并针对企业面临的数据安全风险,提供专业的相关数据安全培训。公司是多款国际主流数据恢复软件的授权代理商,为数据恢复公司、数据取证机构及有专业技能的个人或企业提供官方正版软件产品。文章内容:1.文件擦除与文件删除:它们有什么不同?2.什么时候需要擦除文件3.有没有办法恢复Mac中被擦除的文件</div>
                    </li>
                    <li><a href="/article/1834825117985763328.htm"
                           title="【Mac/Linux终端快捷操作】Finder移动/复制/合并文件" target="_blank">【Mac/Linux终端快捷操作】Finder移动/复制/合并文件</a>
                        <span class="text-muted">TUTO_TUTO</span>
<a class="tag" taget="_blank" href="/search/%E7%BB%88%E7%AB%AF%E5%BF%AB%E6%8D%B7%E6%93%8D%E4%BD%9C/1.htm">终端快捷操作</a><a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a><a class="tag" taget="_blank" href="/search/macos/1.htm">macos</a><a class="tag" taget="_blank" href="/search/%E8%BF%90%E7%BB%B4/1.htm">运维</a><a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0/1.htm">学习</a><a class="tag" taget="_blank" href="/search/%E7%AC%94%E8%AE%B0/1.htm">笔记</a>
                        <div>【注】所有使用相对路径的方法都需要:使用cd命令导航到指定文件夹目录(cd空格把文件夹直接拖进终端)补充在终端中使用cd命令导航文件系统:cd/full/path/to/folder进入特定文件夹。cdsubfolder进入当前目录的子文件夹。cd..返回上一级目录。cd或cd~返回主目录。注意:可以使用Tab键自动补全文件夹名1.多个txt文件中的内容合并成一个txt文件使用相对路径:cat./</div>
                    </li>
                    <li><a href="/article/1834814025607770112.htm"
                           title="Cocos2d、Cocos2dx、Cocos Creator、Cocos Studio的区别" target="_blank">Cocos2d、Cocos2dx、Cocos Creator、Cocos Studio的区别</a>
                        <span class="text-muted">Thomas游戏圈</span>

                        <div>一、Cocos2d和Cocos2dx的区别【开发语言】:Cocos2d是Object-C写的,Cocos2dx是C++写的,支持使用C++、Lua或Java进行开发。【运行平台】:Cocos2d只能在IOS下运行,Cocos2dx是跨平台的,适配iOS、Android、HTML5、Windows和Mac系统,功能侧重于原生移动平台。点击链接加入群聊【Unity/Cocos交流群】【国籍】:Coco</div>
                    </li>
                    <li><a href="/article/1834792851813265408.htm"
                           title="Qt框架在跨平台应用开发中的优势" target="_blank">Qt框架在跨平台应用开发中的优势</a>
                        <span class="text-muted">NewmanEdwarda2</span>
<a class="tag" taget="_blank" href="/search/qt/1.htm">qt</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a>
                        <div>随着软件技术的不断发展,跨平台应用开发已成为软件开发领域的一个重要趋势。在众多跨平台开发框架中,Qt因其强大的功能和灵活性而备受开发者的青睐。本文将从多个方面详细探讨Qt框架在跨平台应用开发中的优势。一、跨平台兼容性Qt框架最显著的优势之一就是其卓越的跨平台兼容性。Qt支持多种操作系统,包括Windows、Linux、macOS、Android、iOS等,使得开发者能够使用同一套代码库为不同平台开</div>
                    </li>
                    <li><a href="/article/1834781256492085248.htm"
                           title="idea 启动tomcat 工程_使用IDEA创建JavaWeb项目 部署本地tomcat并运行" target="_blank">idea 启动tomcat 工程_使用IDEA创建JavaWeb项目 部署本地tomcat并运行</a>
                        <span class="text-muted">心在天上脚在地上</span>
<a class="tag" taget="_blank" href="/search/idea/1.htm">idea</a><a class="tag" taget="_blank" href="/search/%E5%90%AF%E5%8A%A8tomcat/1.htm">启动tomcat</a><a class="tag" taget="_blank" href="/search/%E5%B7%A5%E7%A8%8B/1.htm">工程</a>
                        <div>一、下载商业版IDEA二、新建JavaWeb项目1、在菜单栏找到File>>New>>Project2、在弹出的窗口中找到JavaEnterPrise>>WebApplication,点击Next3、填写项目名称,选择项目位置,然后Finish4、在左侧窗口可以看到IDEA创建JavaWeb工程的目录结构,在src中写java代码,在web目录下放jsp页面。三、下载tomacat下载完成后,解压</div>
                    </li>
                    <li><a href="/article/1834774949244530688.htm"
                           title="Anaconda 安装与使用教程" target="_blank">Anaconda 安装与使用教程</a>
                        <span class="text-muted">寂然如故</span>
<a class="tag" taget="_blank" href="/search/python/1.htm">python</a>
                        <div>Anaconda安装与使用教程目录-[简介](#简介)-[安装Anaconda](#安装anaconda)-[Windows系统](#windows系统)-[macOS系统](#macos系统)-[Linux系统](#linux系统)-[启动AnacondaPrompt(命令行)](#启动anaconda-prompt-命令行)-[创建与管理环境](#创建与管理环境)-[创建环境](#创建环境)-</div>
                    </li>
                    <li><a href="/article/1834760964440944640.htm"
                           title="【JAVA】数据脱敏技术(对称加密算法、非对称加密算法、哈希算法、消息认证码(MAC)算法、密钥交换算法)使用方法" target="_blank">【JAVA】数据脱敏技术(对称加密算法、非对称加密算法、哈希算法、消息认证码(MAC)算法、密钥交换算法)使用方法</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/java/1.htm">java</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%E8%84%B1%E6%95%8F%E6%8A%80%E6%9C%AF/1.htm">数据脱敏技术</a><a class="tag" taget="_blank" href="/search/%E5%8A%A0%E5%AF%86%E7%AE%97%E6%B3%95/1.htm">加密算法</a><a class="tag" taget="_blank" href="/search/AES/1.htm">AES</a>
                        <div>文章目录数据脱敏的定义和目的数据脱敏的技术分类对称加密算法非对称加密算法哈希算法消息认证码(MAC)算法密钥交换算法数据脱敏的技术方案实现字符替换哈希算法(例如:SHA-3算法)消息认证码(MAC)算法(CMAC)消息认证码(MAC)算法(HMAC)对称/非对称加密实现方式(例如:AES加密算法)数据分段数据伪装更多相关内容可查看数据脱敏的定义和目的数据脱敏(DataMasking)是指对数据进行</div>
                    </li>
                    <li><a href="/article/1834756931286298624.htm"
                           title="Swift 基本语法" target="_blank">Swift 基本语法</a>
                        <span class="text-muted">lly202406</span>
<a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a>
                        <div>Swift基本语法Swift是一种由苹果公司开发的编程语言,用于在iOS、macOS、watchOS和tvOS上开发应用程序。它是一种强类型语言,具有清晰的语法和现代特性,使得开发过程更加高效和易于维护。本文将介绍Swift的一些基本语法,帮助初学者快速上手。变量和常量在Swift中,使用let关键字来声明一个常量,使用var关键字来声明一个变量。常量的值在初始化后不能被改变,而变量的值可以随时更</div>
                    </li>
                    <li><a href="/article/1834754537571840000.htm"
                           title="从零开始!Jupyter Notebook的安装教程" target="_blank">从零开始!Jupyter Notebook的安装教程</a>
                        <span class="text-muted">yunquantong</span>
<a class="tag" taget="_blank" href="/search/jupyter/1.htm">jupyter</a><a class="tag" taget="_blank" href="/search/ide/1.htm">ide</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a>
                        <div>以下是从零开始安装JupyterNotebook的教程,适用于Windows、macOS和Linux系统。1.安装PythonJupyterNotebook需要Python环境。你可以从Python官方网站下载并安装Python。Windows用户:运行安装程序时,请确保勾选“AddPythontoPATH”选项。macOS用户:使用安装程序或通过Homebrew安装(brewinstallpyt</div>
                    </li>
                    <li><a href="/article/1834751763526283264.htm"
                           title="vue3打包 error in node_modules/@types/node/stream/web.d.ts 错误解决办法" target="_blank">vue3打包 error in node_modules/@types/node/stream/web.d.ts 错误解决办法</a>
                        <span class="text-muted">柒先生~</span>
<a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a>
                        <div>ue3项目打包的时候突然报错,错误如下ERRORFailedtocompilewith1error14:13:57errorinnode_modules/@types/node/stream/web.d.ts:469:56TS1005:'?'expected.467|//IfReportingObservercheckisremoved,thetypeherewillformacircularre</div>
                    </li>
                    <li><a href="/article/1834751764117680128.htm"
                           title="FISCO BCOS(十七)——— go SDK的使用" target="_blank">FISCO BCOS(十七)——— go SDK的使用</a>
                        <span class="text-muted">林中有神君</span>
<a class="tag" taget="_blank" href="/search/%23/1.htm">#</a><a class="tag" taget="_blank" href="/search/FISCO/1.htm">FISCO</a><a class="tag" taget="_blank" href="/search/BCOS/1.htm">BCOS</a><a class="tag" taget="_blank" href="/search/2.8.0/1.htm">2.8.0</a><a class="tag" taget="_blank" href="/search/golang/1.htm">golang</a><a class="tag" taget="_blank" href="/search/%E6%9C%8D%E5%8A%A1%E5%99%A8/1.htm">服务器</a><a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a><a class="tag" taget="_blank" href="/search/fisco/1.htm">fisco</a><a class="tag" taget="_blank" href="/search/bcos/1.htm">bcos</a><a class="tag" taget="_blank" href="/search/%E5%8C%BA%E5%9D%97%E9%93%BE/1.htm">区块链</a>
                        <div>1、创建一个工作目录root@wyg-virtual-machine:~/fisco#mkdirgoWorkSpace2、下载go-sdkroot@wyg-virtual-machine:~/fisco/</div>
                    </li>
                    <li><a href="/article/1834746108983734272.htm"
                           title="盘点一个Python网络爬虫抓取股票代码问题(上篇)" target="_blank">盘点一个Python网络爬虫抓取股票代码问题(上篇)</a>
                        <span class="text-muted">皮皮_f075</span>

                        <div>大家好,我是皮皮。一、前言前几天在Python白银群【厚德载物】问了一个Python网络爬虫的问题,这里拿出来给大家分享下。image.png二、实现过程这个问题其实for循环就可以搞定了,看上去粉丝的代码没有带请求头那些,导致获取不到数据。后来【瑜亮老师】、【小王子】给了具体思路,代码如下图所示:image.png后来【小王子】也给了一个具体代码,如下:importrequestsimportt</div>
                    </li>
                    <li><a href="/article/1834739283336982528.htm"
                           title="Django 安装指南" target="_blank">Django 安装指南</a>
                        <span class="text-muted">lly202406</span>
<a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a>
                        <div>Django安装指南Django是一个高级的PythonWeb框架,它鼓励快速开发和干净、实用的设计。本指南将详细介绍如何在不同的操作系统上安装Django,包括Windows、macOS和Linux。在Windows上安装Django先决条件Python:Django要求Python3.8或更高版本。可以从Python官网下载适用于Windows的Python安装程序。pip:Python的包管</div>
                    </li>
                    <li><a href="/article/1834736761796915200.htm"
                           title="从零开始!Jupyter Notebook的安装教程" target="_blank">从零开始!Jupyter Notebook的安装教程</a>
                        <span class="text-muted">109702008</span>
<a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a><a class="tag" taget="_blank" href="/search/%E7%BC%96%E7%A8%8B/1.htm">编程</a><a class="tag" taget="_blank" href="/search/%23/1.htm">#</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/jupyter/1.htm">jupyter</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a>
                        <div>GPT-4o(OpenAI)安装JupyterNotebook是一个相对简单的过程,特别是在大多数现代操作系统(如Windows、macOS和Linux)上。以下是详细的步骤指南,从安装Python开始,到JupyterNotebook的使用。步骤1:安装PythonJupyterNotebook需要Python环境。你可以从[Python官网](https://www.python.org/do</div>
                    </li>
                    <li><a href="/article/1834732092211163136.htm"
                           title="数据库管理的利器Navicat —— 全面测评与热门产品推荐" target="_blank">数据库管理的利器Navicat —— 全面测评与热门产品推荐</a>
                        <span class="text-muted">界面开发小八哥</span>
<a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a><a class="tag" taget="_blank" href="/search/Navicat/1.htm">Navicat</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93%E5%BC%80%E5%8F%91/1.htm">数据库开发</a><a class="tag" taget="_blank" href="/search/sql/1.htm">sql</a><a class="tag" taget="_blank" href="/search/mysql/1.htm">mysql</a>
                        <div>在数据库管理领域,Navicat无疑是一款深受欢迎的软件。作为一个强大的数据库管理和开发工具,它支持多种数据库类型,包括MySQL、MariaDB、MongoDB、SQLServer、Oracle、PostgreSQL等。本文将全面测评Navicat的核心功能,同时推荐几款热门的Navicat产品。Navicat的主要特点1.跨平台支持:Navicat支持Windows、Mac和Linux平台,可</div>
                    </li>
                    <li><a href="/article/1834696618260131840.htm"
                           title="Windows下安装Scrapy出现的问题及其解决方法" target="_blank">Windows下安装Scrapy出现的问题及其解决方法</a>
                        <span class="text-muted">咸甜怪</span>

                        <div>Scrapy是Python开发的一个快速、高层次的屏幕抓取和web抓取框架,用于抓取web站点并从页面中提取结构化的数据。在安装Scrapy模块时,pipinstallScrapy出现了以下报错:error:MicrosoftVisualC++14.0isrequired.Getitwith"MicrosoftVisualC++BuildTools":http://landinghub.visua</div>
                    </li>
                    <li><a href="/article/1834688225323610112.htm"
                           title="数据链路层" target="_blank">数据链路层</a>
                        <span class="text-muted">楠枬</span>
<a class="tag" taget="_blank" href="/search/JavaEE/1.htm">JavaEE</a><a class="tag" taget="_blank" href="/search/%E6%9C%8D%E5%8A%A1%E5%99%A8/1.htm">服务器</a><a class="tag" taget="_blank" href="/search/%E7%BD%91%E7%BB%9C/1.htm">网络</a><a class="tag" taget="_blank" href="/search/%E8%BF%90%E7%BB%B4/1.htm">运维</a><a class="tag" taget="_blank" href="/search/%E7%BD%91%E7%BB%9C%E5%8D%8F%E8%AE%AE/1.htm">网络协议</a>
                        <div>目录以太网以太网帧格式MAC地址MAC地址的结构MAC地址和IP地址ARP协议ARP的工作原理ARP缓存RARP协议MTUMTU对IP协议的影响MTU对UDP协议的影响MTU对TCP协议的影响数据链路层是TCP/IP五层协议模型中的第二层,主要负责在相邻的网络节点之间传输数据帧以太网以太网不是一种具体的网络,而是一种技术标准,是当前应用最广泛的局域网技术,它定义了数据链路层和物理层的标准,使得不同</div>
                    </li>
                    <li><a href="/article/1834625142400053248.htm"
                           title="Git报错(一)fatal: Could not read from remote repository." target="_blank">Git报错(一)fatal: Could not read from remote repository.</a>
                        <span class="text-muted">librarycode</span>

                        <div>解决方案来自CSDN:https://blog.csdn.net/cxwtsh123/article/details/79194263?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-3.control&dist_request_id=&depth_1-utm_source=distr</div>
                    </li>
                    <li><a href="/article/1834622479771987968.htm"
                           title="如何在Mac、 iPhone、iPad上将 HEIF 照片转换为 JPG?" target="_blank">如何在Mac、 iPhone、iPad上将 HEIF 照片转换为 JPG?</a>
                        <span class="text-muted">Mac123123</span>

                        <div>默认情况下,您的iPhone和iPad以HEIF格式保存您拍摄的照片和视频。这只是不能被每个设备查看。在本文中,我们将解释如何在iPhone、iPad或Mac上调整此类照片的大小。转换HEIF照片在iOS11中,Apple引入了新的HEIF和HEVC格式。使用这些文件格式,您可以节省大约40%到50%的存储空间,而不会降低图像质量。因此,您可以在iPhone或iCloud中保存更多照片。这一切听起</div>
                    </li>
                    <li><a href="/article/1834608426974539776.htm"
                           title="一种跨平台获取程序名称的方法" target="_blank">一种跨平台获取程序名称的方法</a>
                        <span class="text-muted">shulu</span>
<a class="tag" taget="_blank" href="/search/C%E9%A1%B9%E7%9B%AE/1.htm">C项目</a><a class="tag" taget="_blank" href="/search/c%E8%AF%AD%E8%A8%80/1.htm">c语言</a>
                        <div>一种跨平台获取程序名称的方法代码来自于postgresql#include#include#include#include/**is_absolute_path**Bymakingthisamacroweavoidneedingtoincludepath.cinlibpq.*/#ifndefWIN32#defineIS_DIR_SEP(ch)((ch)=='/')#defineis_absolut</div>
                    </li>
                    <li><a href="/article/1834607544274874368.htm"
                           title="Python中的pyttsx3库:文本到语音转换的利器" target="_blank">Python中的pyttsx3库:文本到语音转换的利器</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/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a><a class="tag" taget="_blank" href="/search/pycharm/1.htm">pycharm</a><a class="tag" taget="_blank" href="/search/pip/1.htm">pip</a>
                        <div>pyttsx3是一个跨平台的文本到语音转换库,它可以在没有安装其他依赖项的情况下在Windows、Linux和macOS上运行。pyttsx3使用系统自带的TTS(文本到语音)引擎,因此可以确保在各种操作系统上都具有较高的稳定性和可用性。官方文档:https://pyttsx3.readthedocs.io/en/latest/https://pyttsx3.readthedocs.io/en/l</div>
                    </li>
                    <li><a href="/article/1834579696419958784.htm"
                           title="C++ STL概念之 算法" target="_blank">C++ STL概念之 算法</a>
                        <span class="text-muted">元凌丶</span>
<a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/1.htm">算法</a><a class="tag" taget="_blank" href="/search/c%2B%2B/1.htm">c++</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a>
                        <div>sortdefault(1)templatevoidsort(RandomAccessIteratorfirst,RandomAccessIteratorlast);custom(2)templatevoidsort(RandomAccessIteratorfirst,RandomAccessIteratorlast,Comparecomp);作用:用于对容器中的元素进行排序。它通常采用快速排序算</div>
                    </li>
                    <li><a href="/article/1834575158040424448.htm"
                           title="macos+vmware-fusion安装vmware-tools并使用" target="_blank">macos+vmware-fusion安装vmware-tools并使用</a>
                        <span class="text-muted">越甲的bode图</span>
<a class="tag" taget="_blank" href="/search/%E6%97%A5%E5%B8%B8/1.htm">日常</a>
                        <div>参考这个链接:https://www.cnblogs.com/dragon-aslan/p/7209857.html亲测完美运行</div>
                    </li>
                    <li><a href="/article/1834557014483759104.htm"
                           title="VMware Fusion 13.6 OEM BIOS 2.7 - 在 macOS 中运行 Windows 虚拟机的最佳方式" target="_blank">VMware Fusion 13.6 OEM BIOS 2.7 - 在 macOS 中运行 Windows 虚拟机的最佳方式</a>
                        <span class="text-muted">sysin.org</span>
<a class="tag" taget="_blank" href="/search/VMware/1.htm">VMware</a><a class="tag" taget="_blank" href="/search/macos/1.htm">macos</a><a class="tag" taget="_blank" href="/search/windows/1.htm">windows</a><a class="tag" taget="_blank" href="/search/fusion/1.htm">fusion</a><a class="tag" taget="_blank" href="/search/oem/1.htm">oem</a><a class="tag" taget="_blank" href="/search/bios/1.htm">bios</a><a class="tag" taget="_blank" href="/search/%E8%99%9A%E6%8B%9F%E5%8C%96/1.htm">虚拟化</a><a class="tag" taget="_blank" href="/search/2025/1.htm">2025</a>
                        <div>VMwareFusion13.6OEMBIOS2.7-在macOS中运行Windows虚拟机的最佳方式VMwareFusion13原版App中集成OEMBIOS请访问原文链接:https://sysin.cn/blog/vmware-fusion-13-oem/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.org2024-09-03,版本13.6更新,支持macOSSequoia作</div>
                    </li>
                    <li><a href="/article/1834547178496946176.htm"
                           title="VOC数据集转换为CoCo数据集(亲测有效)" target="_blank">VOC数据集转换为CoCo数据集(亲测有效)</a>
                        <span class="text-muted">情书学长</span>
<a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a><a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0/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%9B%BE%E5%83%8F%E5%A4%84%E7%90%86/1.htm">图像处理</a>
                        <div>#VOC数据集格式VOC格式的数据集分为3部分,Annotations、ImageSets、JPEGImages。(一)Annotations:存放数据标注的xml文件,格式如下:CUMID_train0001.pngC:\Users\86182\Desktop\CUMID_train\0001.pngUnknown2040136830MachineUnspecified0011933491451</div>
                    </li>
                    <li><a href="/article/1834540118141136896.htm"
                           title="【Linux入门】iptables的安装与配置应用实例" target="_blank">【Linux入门】iptables的安装与配置应用实例</a>
                        <span class="text-muted">Karoku066</span>
<a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a><a class="tag" taget="_blank" href="/search/%E7%BD%91%E7%BB%9C/1.htm">网络</a><a class="tag" taget="_blank" href="/search/%E8%BF%90%E7%BB%B4/1.htm">运维</a><a class="tag" taget="_blank" href="/search/%E6%9C%8D%E5%8A%A1%E5%99%A8/1.htm">服务器</a><a class="tag" taget="_blank" href="/search/bash/1.htm">bash</a>
                        <div>文章目录iptables安装与配置安装iptablesiptables配置方法iptables命令行配置方法iptables规则匹配详细整理1.通用匹配2.隐含匹配显式匹配(扩展匹配)1.多端口匹配2.IP范围匹配3.MAC地址匹配4.状态匹配SNAT与DNATSNAT(源网络地址转换)原理与应用SNAT应用环境SNAT原理SNAT转换前提条件SNAT转换示例DNAT(目标网络地址转换)原理与应用</div>
                    </li>
                    <li><a href="/article/1834535995027058688.htm"
                           title="【Vesta发号器源码】PropertyMachineIdsProvider" target="_blank">【Vesta发号器源码】PropertyMachineIdsProvider</a>
                        <span class="text-muted">DeanChangDM</span>

                        <div>Vesta发号器源码解析——PropertyMachineIdsProvider属性配置文件持有Id的模式,没啥东西,比单个的多了一个获取下一个的方法封装实现上略有一点点区别privatelong[]machineIds;privateintcurrentIndex;publiclonggetNextMachineId(){returngetMachineId();}publiclonggetMa</div>
                    </li>
                    <li><a href="/article/1834529156549931008.htm"
                           title="Awesome TensorFlow" target="_blank">Awesome TensorFlow</a>
                        <span class="text-muted">weixin_30594001</span>
<a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a><a class="tag" taget="_blank" href="/search/%E7%A7%BB%E5%8A%A8%E5%BC%80%E5%8F%91/1.htm">移动开发</a><a class="tag" taget="_blank" href="/search/%E5%A4%A7%E6%95%B0%E6%8D%AE/1.htm">大数据</a>
                        <div>AwesomeTensorFlowAcuratedlistofawesomeTensorFlowexperiments,libraries,andprojects.Inspiredbyawesome-machine-learning.WhatisTensorFlow?TensorFlowisanopensourcesoftwarelibraryfornumericalcomputationusin</div>
                    </li>
                                <li><a href="/article/43.htm"
                                       title="集合框架" target="_blank">集合框架</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%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84/1.htm">数据结构</a><a class="tag" taget="_blank" href="/search/%E9%9B%86%E5%90%88%E6%A1%86%E6%9E%B6/1.htm">集合框架</a>
                                    <div>   集合框架 
集合框架可以理解为一个容器,该容器主要指映射(map)、集合(set)、数组(array)和列表(list)等抽象数据结构。 
从本质上来说,Java集合框架的主要组成是用来操作对象的接口。不同接口描述不同的数据类型。 
  
简单介绍: 
  
Collection接口是最基本的接口,它定义了List和Set,List又定义了LinkLi</div>
                                </li>
                                <li><a href="/article/170.htm"
                                       title="Table Driven(表驱动)方法实例" target="_blank">Table Driven(表驱动)方法实例</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/enum/1.htm">enum</a><a class="tag" taget="_blank" href="/search/Table+Driven/1.htm">Table Driven</a><a class="tag" taget="_blank" href="/search/%E8%A1%A8%E9%A9%B1%E5%8A%A8/1.htm">表驱动</a>
                                    <div>实例一:   
/**
 * 驾驶人年龄段
 * 保险行业,会对驾驶人的年龄做年龄段的区分判断
 * 驾驶人年龄段:01-[18,25);02-[25,30);03-[30-35);04-[35,40);05-[40,45);06-[45,50);07-[50-55);08-[55,+∞)
 */
public class AgePeriodTest {

    //if...el</div>
                                </li>
                                <li><a href="/article/297.htm"
                                       title="Jquery 总结" target="_blank">Jquery 总结</a>
                                    <span class="text-muted">cuishikuan</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/jquery/1.htm">jquery</a><a class="tag" taget="_blank" href="/search/Ajax/1.htm">Ajax</a><a class="tag" taget="_blank" href="/search/Web/1.htm">Web</a><a class="tag" taget="_blank" href="/search/jquery%E6%96%B9%E6%B3%95/1.htm">jquery方法</a>
                                    <div>1.$.trim方法用于移除字符串头部和尾部多余的空格。如:$.trim('   Hello   ') // Hello2.$.contains方法返回一个布尔值,表示某个DOM元素(第二个参数)是否为另一个DOM元素(第一个参数)的下级元素。如:$.contains(document.documentElement, document.body); 3.$</div>
                                </li>
                                <li><a href="/article/424.htm"
                                       title="面向对象概念的提出" target="_blank">面向对象概念的提出</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/%E9%9D%A2%E5%90%91%E5%AF%B9%E8%B1%A1/1.htm">面向对象</a><a class="tag" taget="_blank" href="/search/%E9%9D%A2%E5%90%91%E8%BF%87%E7%A8%8B/1.htm">面向过程</a>
                                    <div>   
     面向对象中,一切都是由对象展开的,组织代码,封装数据。 
  在台湾面向对象被翻译为了面向物件编程,这充分说明了,这种编程强调实体。 
  
    下面就结合编程语言的发展史,聊一聊面向过程和面向对象。 
     c语言由贝尔实</div>
                                </li>
                                <li><a href="/article/551.htm"
                                       title="linux网口绑定" target="_blank">linux网口绑定</a>
                                    <span class="text-muted">被触发</span>
<a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a>
                                    <div>刚在一台IBM Xserver服务器上装了RedHat Linux Enterprise AS 4,为了提高网络的可靠性配置双网卡绑定。 
 
一、环境描述 
我的RedHat Linux Enterprise AS 4安装双口的Intel千兆网卡,通过ifconfig -a命令看到eth0和eth1两张网卡。 
 
二、双网卡绑定步骤: 
2.1 修改/etc/sysconfig/network</div>
                                </li>
                                <li><a href="/article/678.htm"
                                       title="XML基础语法" target="_blank">XML基础语法</a>
                                    <span class="text-muted">肆无忌惮_</span>
<a class="tag" taget="_blank" href="/search/xml/1.htm">xml</a>
                                    <div>一、什么是XML? 
XML全称是Extensible Markup Language,可扩展标记语言。很类似HTML。XML的目的是传输数据而非显示数据。XML的标签没有被预定义,你需要自行定义标签。XML被设计为具有自我描述性。是W3C的推荐标准。 
  
二、为什么学习XML? 
用来解决程序间数据传输的格式问题 
做配置文件 
充当小型数据库 
  
三、XML与HTM</div>
                                </li>
                                <li><a href="/article/805.htm"
                                       title="为网页添加自己喜欢的字体" target="_blank">为网页添加自己喜欢的字体</a>
                                    <span class="text-muted">知了ing</span>
<a class="tag" taget="_blank" href="/search/%E5%AD%97%E4%BD%93+%E7%A7%92%E8%A1%A8+css/1.htm">字体 秒表 css</a>
                                    <div>@font-face {
			font-family: miaobiao;//定义字体名字
			font-style:  normal;
		    font-weight: 400;
			src: url('font/DS-DIGI-e.eot');//字体文件
		} 
使用: 
 
<label style="font-size:18px;font-famil</div>
                                </li>
                                <li><a href="/article/932.htm"
                                       title="redis范围查询应用-查找IP所在城市" target="_blank">redis范围查询应用-查找IP所在城市</a>
                                    <span class="text-muted">矮蛋蛋</span>
<a class="tag" taget="_blank" href="/search/redis/1.htm">redis</a>
                                    <div>原文地址: 
http://www.tuicool.com/articles/BrURbqV 
需求 
 
根据IP找到对应的城市 
 
原来的解决方案 
 
oracle表(ip_country): 
 
 
查询IP对应的城市: 
 
1.把a.b.c.d这样格式的IP转为一个数字,例如为把210.21.224.34转为3524648994 
 
2. select city from ip_</div>
                                </li>
                                <li><a href="/article/1059.htm"
                                       title="输入两个整数, 计算百分比" target="_blank">输入两个整数, 计算百分比</a>
                                    <span class="text-muted">alleni123</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a>
                                    <div>	public static String getPercent(int x, int total){
		 
		double result=(x*1.0)/(total*1.0);
		System.out.println(result);
		
		
		DecimalFormat df1=new DecimalFormat("0.0000%");
		
</div>
                                </li>
                                <li><a href="/article/1186.htm"
                                       title="百合——————>怎么学习计算机语言" target="_blank">百合——————>怎么学习计算机语言</a>
                                    <span class="text-muted">百合不是茶</span>
<a class="tag" taget="_blank" href="/search/java+%E7%A7%BB%E5%8A%A8%E5%BC%80%E5%8F%91/1.htm">java 移动开发</a>
                                    <div>    对于一个从没有接触过计算机语言的人来说,一上来就学面向对象,就算是心里上面接受的了,灵魂我觉得也应该是跟不上的,学不好是很正常的现象,计算机语言老师讲的再多,你在课堂上面跟着老师听的再多,我觉得你应该还是学不会的,最主要的原因是你根本没有想过该怎么来学习计算机编程语言,记得大一的时候金山网络公司在湖大招聘我们学校一个才来大学几天的被金山网络录取,一个刚到大学的就能够去和</div>
                                </li>
                                <li><a href="/article/1313.htm"
                                       title="linux下tomcat开机自启动" target="_blank">linux下tomcat开机自启动</a>
                                    <span class="text-muted">bijian1013</span>
<a class="tag" taget="_blank" href="/search/tomcat/1.htm">tomcat</a>
                                    <div>方法一: 
修改Tomcat/bin/startup.sh 为: 
export JAVA_HOME=/home/java1.6.0_27
export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:.
export PATH=$JAVA_HOME/bin:$PATH
export CATALINA_H</div>
                                </li>
                                <li><a href="/article/1440.htm"
                                       title="spring aop实例" target="_blank">spring aop实例</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/AOP/1.htm">AOP</a>
                                    <div>1.AdviceMethods.java 
package com.bijian.study.spring.aop.schema;

public class AdviceMethods {

	public void preGreeting() {
		System.out.println("--how are you!--");
	}
} 
2.beans.x</div>
                                </li>
                                <li><a href="/article/1567.htm"
                                       title="[Gson八]GsonBuilder序列化和反序列化选项enableComplexMapKeySerialization" target="_blank">[Gson八]GsonBuilder序列化和反序列化选项enableComplexMapKeySerialization</a>
                                    <span class="text-muted">bit1129</span>
<a class="tag" taget="_blank" href="/search/serialization/1.htm">serialization</a>
                                    <div>enableComplexMapKeySerialization配置项的含义 
 Gson在序列化Map时,默认情况下,是调用Key的toString方法得到它的JSON字符串的Key,对于简单类型和字符串类型,这没有问题,但是对于复杂数据对象,如果对象没有覆写toString方法,那么默认的toString方法将得到这个对象的Hash地址。 
  
GsonBuilder用于</div>
                                </li>
                                <li><a href="/article/1694.htm"
                                       title="【Spark九十一】Spark Streaming整合Kafka一些值得关注的问题" target="_blank">【Spark九十一】Spark Streaming整合Kafka一些值得关注的问题</a>
                                    <span class="text-muted">bit1129</span>
<a class="tag" taget="_blank" href="/search/Stream/1.htm">Stream</a>
                                    <div>包括Spark Streaming在内的实时计算数据可靠性指的是三种级别: 
1. At most once,数据最多只能接受一次,有可能接收不到 
2. At least once, 数据至少接受一次,有可能重复接收 
3. Exactly once  数据保证被处理并且只被处理一次, 
  
具体的多读几遍http://spark.apache.org/docs/lates</div>
                                </li>
                                <li><a href="/article/1821.htm"
                                       title="shell脚本批量检测端口是否被占用脚本" target="_blank">shell脚本批量检测端口是否被占用脚本</a>
                                    <span class="text-muted">ronin47</span>

                                    <div>#!/bin/bash
cat ports   |while read line
do#nc -z  -w 10  $line

nc -z -w 2 $line 58422>/dev/null2>&1if[ $?-eq 0]then
echo $line:ok
else
echo $line:fail
fi

done

这里的ports 既可以是文件</div>
                                </li>
                                <li><a href="/article/1948.htm"
                                       title="java-2.设计包含min函数的栈" target="_blank">java-2.设计包含min函数的栈</a>
                                    <span class="text-muted">bylijinnan</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a>
                                    <div>具体思路参见:http://zhedahht.blog.163.com/blog/static/25411174200712895228171/ 
 

import java.util.ArrayList;
import java.util.List;


public class MinStack {

	//maybe we can use origin array rathe</div>
                                </li>
                                <li><a href="/article/2075.htm"
                                       title="Netty源码学习-ChannelHandler" target="_blank">Netty源码学习-ChannelHandler</a>
                                    <span class="text-muted">bylijinnan</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/netty/1.htm">netty</a>
                                    <div> 
一般来说,“有状态”的ChannelHandler不应该是“共享”的,“无状态”的ChannelHandler则可“共享” 
例如ObjectEncoder是“共享”的, 但 ObjectDecoder 不是 
因为每一次调用decode方法时,可能数据未接收完全(incomplete), 
它与上一次decode时接收到的数据“累计”起来才有可能是完整的数据,是“有状态”的 
 
 

p</div>
                                </li>
                                <li><a href="/article/2202.htm"
                                       title="java生成随机数" target="_blank">java生成随机数</a>
                                    <span class="text-muted">cngolon</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a>
                                    <div>方法一: 
/** 
* 生成随机数 
* @author cngolon@126.com 
* @return 
*/ 
public synchronized static String getChargeSequenceNum(String pre){ 
StringBuffer sequenceNum = new StringBuffer(); 
Date dateTime = new D</div>
                                </li>
                                <li><a href="/article/2329.htm"
                                       title="POI读写海量数据" target="_blank">POI读写海量数据</a>
                                    <span class="text-muted">ctrain</span>
<a class="tag" taget="_blank" href="/search/%E6%B5%B7%E9%87%8F%E6%95%B0%E6%8D%AE/1.htm">海量数据</a>
                                    <div>import java.io.FileOutputStream; 
import java.io.OutputStream; 
 
import org.apache.poi.xssf.streaming.SXSSFRow; 
import org.apache.poi.xssf.streaming.SXSSFSheet; 
import org.apache.poi.xssf.streaming</div>
                                </li>
                                <li><a href="/article/2456.htm"
                                       title="mysql 日期格式化date_format详细使用" target="_blank">mysql 日期格式化date_format详细使用</a>
                                    <span class="text-muted">daizj</span>
<a class="tag" taget="_blank" href="/search/mysql/1.htm">mysql</a><a class="tag" taget="_blank" href="/search/date_format/1.htm">date_format</a><a class="tag" taget="_blank" href="/search/%E6%97%A5%E6%9C%9F%E6%A0%BC%E5%BC%8F%E8%BD%AC%E6%8D%A2/1.htm">日期格式转换</a><a class="tag" taget="_blank" href="/search/%E6%97%A5%E6%9C%9F%E6%A0%BC%E5%BC%8F%E5%8C%96/1.htm">日期格式化</a>
                                    <div> 
 日期转换函数的详细使用说明 
   DATE_FORMAT(date,format) Formats the date value according to the format string. The following specifiers may be used in the format string. The&n</div>
                                </li>
                                <li><a href="/article/2583.htm"
                                       title="一个程序员分享8年的开发经验" target="_blank">一个程序员分享8年的开发经验</a>
                                    <span class="text-muted">dcj3sjt126com</span>
<a class="tag" taget="_blank" href="/search/%E7%A8%8B%E5%BA%8F%E5%91%98/1.htm">程序员</a>
                                    <div>  
在中国有很多人都认为IT行为是吃青春饭的,如果过了30岁就很难有机会再发展下去!其实现实并不是这样子的,在下从事.NET及JAVA方面的开发的也有8年的时间了,在这里在下想凭借自己的亲身经历,与大家一起探讨一下。 
明确入行的目的 
很多人干IT这一行都冲着“收入高”这一点的,因为只要学会一点HTML, DIV+CSS,要做一个页面开发人员并不是一件难事,而且做一个页面开发人员更容</div>
                                </li>
                                <li><a href="/article/2710.htm"
                                       title="android欢迎界面淡入淡出效果" target="_blank">android欢迎界面淡入淡出效果</a>
                                    <span class="text-muted">dcj3sjt126com</span>
<a class="tag" taget="_blank" href="/search/android/1.htm">android</a>
                                    <div>很多Android应用一开始都会有一个欢迎界面,淡入淡出效果也是用得非常多的,下面来实现一下。 
主要代码如下: 
package com.myaibang.activity; 
import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.os.CountDown</div>
                                </li>
                                <li><a href="/article/2837.htm"
                                       title="linux 复习笔记之常见压缩命令" target="_blank">linux 复习笔记之常见压缩命令</a>
                                    <span class="text-muted">eksliang</span>
<a class="tag" taget="_blank" href="/search/tar%E8%A7%A3%E5%8E%8B/1.htm">tar解压</a><a class="tag" taget="_blank" href="/search/linux%E7%B3%BB%E7%BB%9F%E5%B8%B8%E8%A7%81%E5%8E%8B%E7%BC%A9%E5%91%BD%E4%BB%A4/1.htm">linux系统常见压缩命令</a><a class="tag" taget="_blank" href="/search/linux%E5%8E%8B%E7%BC%A9%E5%91%BD%E4%BB%A4/1.htm">linux压缩命令</a><a class="tag" taget="_blank" href="/search/tar%E5%8E%8B%E7%BC%A9/1.htm">tar压缩</a>
                                    <div>转载请出自出处:http://eksliang.iteye.com/blog/2109693 
linux中常见压缩文件的拓展名 
*.gz   gzip程序压缩的文件
*.bz2  bzip程序压缩的文件
*.tar  tar程序打包的数据,没有经过压缩
*.tar.gz  tar程序打包后,并经过gzip程序压缩
*.tar.bz2 tar程序打包后,并经过bzip程序压缩
*.zi</div>
                                </li>
                                <li><a href="/article/2964.htm"
                                       title="Android 应用程序发送shell命令" target="_blank">Android 应用程序发送shell命令</a>
                                    <span class="text-muted">gqdy365</span>
<a class="tag" taget="_blank" href="/search/android/1.htm">android</a>
                                    <div>项目中需要直接在APP中通过发送shell指令来控制lcd灯,其实按理说应该是方案公司在调好lcd灯驱动之后直接通过service送接口上来给APP,APP调用就可以控制了,这是正规流程,但我们项目的方案商用的mtk方案,方案公司又没人会改,只调好了驱动,让应用程序自己实现灯的控制,这不蛋疼嘛!!!! 
 
发就发吧! 
 
一、关于shell指令: 
我们知道,shell指令是Linux里面带的</div>
                                </li>
                                <li><a href="/article/3091.htm"
                                       title="java 无损读取文本文件" target="_blank">java 无损读取文本文件</a>
                                    <span class="text-muted">hw1287789687</span>
<a class="tag" taget="_blank" href="/search/%E8%AF%BB%E5%8F%96%E6%96%87%E4%BB%B6/1.htm">读取文件</a><a class="tag" taget="_blank" href="/search/%E6%97%A0%E6%8D%9F%E8%AF%BB%E5%8F%96/1.htm">无损读取</a><a class="tag" taget="_blank" href="/search/%E8%AF%BB%E5%8F%96%E6%96%87%E6%9C%AC%E6%96%87%E4%BB%B6/1.htm">读取文本文件</a><a class="tag" taget="_blank" href="/search/charset/1.htm">charset</a>
                                    <div>java 如何无损读取文本文件呢? 
以下是有损的 
@Deprecated
	public static String getFullContent(File file, String charset) {
		BufferedReader reader = null;
		if (!file.exists()) {
			System.out.println("getFull</div>
                                </li>
                                <li><a href="/article/3218.htm"
                                       title="Firebase 相关文章索引" target="_blank">Firebase 相关文章索引</a>
                                    <span class="text-muted">justjavac</span>
<a class="tag" taget="_blank" href="/search/firebase/1.htm">firebase</a>
                                    <div>Awesome Firebase 
最近谷歌收购Firebase的新闻又将Firebase拉入了人们的视野,于是我做了这个 github 项目。 
Firebase 是一个数据同步的云服务,不同于 Dropbox 的「文件」,Firebase 同步的是「数据」,服务对象是网站开发者,帮助他们开发具有「实时」(Real-Time)特性的应用。 
开发者只需引用一个 API 库文件就可以使用标准 RE</div>
                                </li>
                                <li><a href="/article/3345.htm"
                                       title="C++学习重点" target="_blank">C++学习重点</a>
                                    <span class="text-muted">lx.asymmetric</span>
<a class="tag" taget="_blank" href="/search/C%2B%2B/1.htm">C++</a><a class="tag" taget="_blank" href="/search/%E7%AC%94%E8%AE%B0/1.htm">笔记</a>
                                    <div>1.c++面向对象的三个特性:封装性,继承性以及多态性。 
  
2.标识符的命名规则:由字母和下划线开头,同时由字母、数字或下划线组成;不能与系统关键字重名。 
  
3.c++语言常量包括整型常量、浮点型常量、布尔常量、字符型常量和字符串性常量。 
  
4.运算符按其功能开以分为六类:算术运算符、位运算符、关系运算符、逻辑运算符、赋值运算符和条件运算符。 
&n</div>
                                </li>
                                <li><a href="/article/3472.htm"
                                       title="java bean和xml相互转换" target="_blank">java bean和xml相互转换</a>
                                    <span class="text-muted">q821424508</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/bean/1.htm">bean</a><a class="tag" taget="_blank" href="/search/xml/1.htm">xml</a><a class="tag" taget="_blank" href="/search/xml%E5%92%8Cbean%E8%BD%AC%E6%8D%A2/1.htm">xml和bean转换</a><a class="tag" taget="_blank" href="/search/java+bean%E5%92%8Cxml%E8%BD%AC%E6%8D%A2/1.htm">java bean和xml转换</a>
                                    <div>这几天在做微信公众号 
做的过程中想找个java bean转xml的工具,找了几个用着不知道是配置不好还是怎么回事,都会有一些问题, 
然后脑子一热谢了一个javabean和xml的转换的工具里,自己用着还行,虽然有一些约束吧 , 
还是贴出来记录一下  
  
  
顺便你提一下下,这个转换工具支持属性为集合、数组和非基本属性的对象。 
  
packag</div>
                                </li>
                                <li><a href="/article/3599.htm"
                                       title="C 语言初级 位运算" target="_blank">C 语言初级 位运算</a>
                                    <span class="text-muted">1140566087</span>
<a class="tag" taget="_blank" href="/search/%E4%BD%8D%E8%BF%90%E7%AE%97/1.htm">位运算</a><a class="tag" taget="_blank" href="/search/c/1.htm">c</a>
                                    <div>  第十章 位运算    1、位运算对象只能是整形或字符型数据,在VC6.0中int型数据占4个字节    2、位运算符:  运算符 作用  ~ 按位求反  << 左移  >> 右移  & 按位与  ^ 按位异或  | 按位或   他们的优先级从高到低;    3、位运算符的运算功能:  a、按位取反:  ~01001101 = 101</div>
                                </li>
                                <li><a href="/article/3726.htm"
                                       title="14点睛Spring4.1-脚本编程" target="_blank">14点睛Spring4.1-脚本编程</a>
                                    <span class="text-muted">wiselyman</span>
<a class="tag" taget="_blank" href="/search/spring4/1.htm">spring4</a>
                                    <div>14.1 Scripting脚本编程 
 
 脚本语言和java这类静态的语言的主要区别是:脚本语言无需编译,源码直接可运行; 
 如果我们经常需要修改的某些代码,每一次我们至少要进行编译,打包,重新部署的操作,步骤相当麻烦; 
 如果我们的应用不允许重启,这在现实的情况中也是很常见的; 
 在spring中使用脚本编程给上述的应用场景提供了解决方案,即动态加载bean; 
 spring支持脚本</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>