网页代码

零基础写python爬虫之使用Scrapy框架编写爬虫

此生再无相见时 提交于 2019-12-08 21:02:01
网络爬虫,是在网上进行数据抓取的程序,使用它能够抓取特定网页的HTML数据。虽然我们利用一些库开发一个爬虫程序,但是使用框架可以大大提高效率,缩短开发时间。Scrapy是一个使用 Python 编写的,轻量级的,简单轻巧,并且使用起来非常的方便。使用Scrapy可以很方便的完成网上数据的采集工作,它为我们完成了大量的工作,而不需要自己费大力气去开发。 首先先要回答一个问题。 问:把网站装进爬虫里,总共分几步? 答案很简单,四步: 新建项目 (Project):新建一个新的爬虫项目 明确目标(Items):明确你想要抓取的目标 制作爬虫(Spider):制作爬虫开始爬取网页 存储内容(Pipeline):设计管道存储爬取内容 好的,基本流程既然确定了,那接下来就一步一步的完成就可以了。 1.新建项目(Project) 在空目录下按住Shift键右击,选择“在此处打开命令窗口”,输入一下命令: 代码如下: scrapy startproject tutorial 其中,tutorial为项目名称。 可以看到将会创建一个tutorial文件夹,目录结构如下: 代码如下: tutorial/ scrapy.cfg tutorial/ __init__.py items.py pipelines.py settings.py spiders/ __init__.py ...

模块化Javascript编程基础

房东的猫 提交于 2019-12-07 10:10:36
(一) 随着网站逐渐变成" 互联网应用程序 ",嵌入网页的Javascript代码越来越庞大,越来越复杂。 网页越来越像桌面程序,需要一个团队分工协作、进度管理、单元测试等等......开发者不得不使用软件工程的方法,管理网页的业务逻辑。 Javascript模块化编程,已经成为一个迫切的需求。理想情况下,开发者只需要实现核心的业务逻辑,其他都可以加载别人已经写好的模块。 但是,Javascript不是一种模块化编程语言,它不支持" 类 "(class),更遑论"模块"(module)了。(正在制定中的 ECMAScript标准 第六版,将正式支持"类"和"模块",但还需要很长时间才能投入实用。) Javascript社区做了很多努力,在现有的运行环境中,实现"模块"的效果。本文总结了当前"Javascript模块化编程"的最佳实践,说明如何投入实用。虽然这不是初级教程,但是只要稍稍了解Javascript的基本语法,就能看懂。 一、原始写法 模块就是实现特定功能的一组方法。 只要把不同的函数(以及记录状态的变量)简单地放在一起,就算是一个模块。   function m1(){     //...   }   function m2(){     //...   } 上面的函数m1()和m2(),组成一个模块。使用的时候,直接调用就行了。 这种做法的缺点很明显:"污染"了全局变量

Apache启用mod_expires模块

旧城冷巷雨未停 提交于 2019-12-06 17:33:52
mod_expires可以减少10%左右的重复请求,让重复的用户对指定的页面请求结果都CACHE在本地,根本不向服务器发出请求。 在使用之前,首先要确认一下”mod_expires”模组是否有启用.如果是自己安装Apache来架设网页主机的话,这里我们可以透过编辑Apache的”httpd.conf”设定档来处理.搜寻一下,你可能会找到这么一行: #LoadModule expires_module modules/mod_expires.so 复制代码 将该行前面的”#”字号删除,然后将”httpd.conf”设定档储存后,重新启动Apache来使这个更新生效. 当然如果我们是租用虚拟主机的话,”httpd.conf”设定档我们一般用户是接触不到的,而在网站根目录里写个”.htaccess”设定档, 我想在运用上相对是较灵活的.”mod_expires”的设定资料除了可以写在Apache的”httpd.conf”设定档中,也可以写 在”.htaccess”设定档里. 我们知道在使用浏览器浏览网页时,浏览器会把网页资料快取(Cache)下来储存在本机端,用以加快下回浏览相同网页时不必再重新由网站上下载,进 而有加速的效果.使用mod_expires模组来加速网页浏览,这里所谓的”加速”,其实是利用”mod_expires”的功能,来设定网页文件的过 期时间,加长网页文件被浏览器快取

HTTP协议状态码详解(HTTP Status Code)

只愿长相守 提交于 2019-12-06 17:18:39
使用ASP.NET/PHP/JSP 或者javascript都会用到http的不同状态,一些常见的状态码为: 200 – 服务器成功返回网页 404 – 请求的网页不存在 503 – 服务不可用 1xx(临时响应) 表示临时响应并需要请求者继续执行操作的状态代码。 代码 说明 100 (继续) 请求者应当继续提出请求。 服务器返回此代码表示已收到请求的第一部分,正在等待其余部分。 101 (切换协议) 请求者已要求服务器切换协议,服务器已确认并准备切换。 2xx (成功) 表示成功处理了请求的状态代码。 代码 说明 200 (成功) 服务器已成功处理了请求。 通常,这表示服务器提供了请求的网页。 201 (已创建) 请求成功并且服务器创建了新的资源。 202 (已接受) 服务器已接受请求,但尚未处理。 203 (非授权信息) 服务器已成功处理了请求,但返回的信息可能来自另一来源。 204 (无内容) 服务器成功处理了请求,但没有返回任何内容。 205 (重置内容) 服务器成功处理了请求,但没有返回任何内容。 206 (部分内容) 服务器成功处理了部分 GET 请求。 3xx (重定向) 表示要完成请求,需要进一步操作。 通常,这些状态代码用来重定向。 代码 说明 300 (多种选择) 针对请求,服务器可执行多种操作。 服务器可根据请求者 (user agent) 选择一项操作

HTTP状态代码含义

狂风中的少年 提交于 2019-12-06 14:15:18
状态代码(也称作错误代码),指为服务器所接收每个请求(网页点击)分配的 3 位数代码。多数有效网页点击都有状态代码 200("正常")。如果"网页未找到"则会生产常见的404错误。了解各种状态代码的含义可以更迅速的发现问题,找到问题,解决问题。可以很大程度上的提高工作效率。下面是一些常见的状态代码。 1xx(临时响应)   用于表示临时响应并需要请求者执行操作才能继续的状态代码。 代码 说明   100(继续) 请求者应当继续提出请求。服务器返回此代码则意味着,服务器已收到了请求的第一部分,现正在等待接收其余部分。   101(切换协议) 请求者已要求服务器切换协议,服务器已确认并准备进行切换。 2xx(成功)   用于表示服务器已成功处理了请求的状态代码。 代码 说明   200(成功) 服务器已成功处理了请求。通常,这表示服务器提供了请求的网页。如果您的 robots.txt 文件显示为此状态,那么,这表示 Googlebot 已成功检索到该文件。   201(已创建) 请求成功且服务器已创建了新的资源。   202(已接受) 服务器已接受了请求,但尚未对其进行处理。   203(非授权信息) 服务器已成功处理了请求,但返回了可能来自另一来源的信息。   204(无内容) 服务器成功处理了请求,但未返回任何内容。   205(重置内容) 服务器成功处理了请求,但未返回任何内容

HTTP状态代码含义

戏子无情 提交于 2019-12-06 09:49:27
状态代码(也称作错误代码),指为服务器所接收每个请求(网页点击)分配的 3 位数代码。多数有效网页点击都有状态代码 200("正常")。如果"网页未找到"则会生产常见的404错误。了解各种状态代码的含义可以更迅速的发现问题,找到问题,解决问题。可以很大程度上的提高工作效率。下面是一些常见的状态代码。 1xx(临时响应)   用于表示临时响应并需要请求者执行操作才能继续的状态代码。 代码 说明   100(继续) 请求者应当继续提出请求。服务器返回此代码则意味着,服务器已收到了请求的第一部分,现正在等待接收其余部分。   101(切换协议) 请求者已要求服务器切换协议,服务器已确认并准备进行切换。 2xx(成功)   用于表示服务器已成功处理了请求的状态代码。 代码 说明   200(成功) 服务器已成功处理了请求。通常,这表示服务器提供了请求的网页。如果您的 robots.txt 文件显示为此状态,那么,这表示 Googlebot 已成功检索到该文件。   201(已创建) 请求成功且服务器已创建了新的资源。   202(已接受) 服务器已接受了请求,但尚未对其进行处理。   203(非授权信息) 服务器已成功处理了请求,但返回了可能来自另一来源的信息。   204(无内容) 服务器成功处理了请求,但未返回任何内容。   205(重置内容) 服务器成功处理了请求,但未返回任何内容

HTTP协议状态码详解(HTTP Status Code)

被刻印的时光 ゝ 提交于 2019-12-06 08:44:54
本文出自: https://www.cnblogs.com/shanyou/archive/2012/05/06/2486134.html 使用ASP.NET/PHP/JSP 或者javascript都会用到http的不同状态,一些常见的状态码为: 200 – 服务器成功返回网页 404 – 请求的网页不存在 503 – 服务不可用 1xx(临时响应) 表示临时响应并需要请求者继续执行操作的状态代码。 代码 说明 100 (继续) 请求者应当继续提出请求。 服务器返回此代码表示已收到请求的第一部分,正在等待其余部分。 101 (切换协议) 请求者已要求服务器切换协议,服务器已确认并准备切换。 2xx (成功) 表示成功处理了请求的状态代码。 代码 说明 200 (成功) 服务器已成功处理了请求。 通常,这表示服务器提供了请求的网页。 201 (已创建) 请求成功并且服务器创建了新的资源。 202 (已接受) 服务器已接受请求,但尚未处理。 203 (非授权信息) 服务器已成功处理了请求,但返回的信息可能来自另一来源。 204 (无内容) 服务器成功处理了请求,但没有返回任何内容。 205 (重置内容) 服务器成功处理了请求,但没有返回任何内容。 206 (部分内容) 服务器成功处理了部分 GET 请求。 3xx (重定向) 表示要完成请求,需要进一步操作。 通常

状态码信息集锦

可紊 提交于 2019-12-06 08:40:17
1.1 1xx(临时响应) 表示临时响应并需要请求者继续执行操作的状态码。 100(继续)请求者应当继续提出请求。服务器返回此代码表示已收到请求的第一部分,正在等待其余部分。 101(切换协议)请求者已要求服务器切换协议,服务器已确认并准备切换。 1.2 2xx (成功) 表示成功处理了请求的状态码。 200(成功)服务器已成功处理了请求。通常,这表示服务器提供了请求的网页。如果是对您的 robots.txt 文件显示此状态码,则表示 Googlebot 已成功检索到该文件。 201(已创建)请求成功并且服务器创建了新的资源。 202(已接受)服务器已接受请求,但尚未处理。 203(非授权信息)服务器已成功处理了请求,但返回的信息可能来自另一来源。 204(无内容)服务器成功处理了请求,但没有返回任何内容。 205(重置内容)服务器成功处理了请求,但没有返回任何内容。与 204 响应不同,此响应要求请求者重置文档视图(例如,清除表单内容以输入新内容)。 206(部分内容)服务器成功处理了部分 GET 请求。 1.3 3xx (重定向) 要完成请求,需要进一步操作。通常,这些状态码用来重定向。Google 建议您在每次请求中使用重定向不要超过 5 次。您可以使用网站管理员工具查看一下 Googlebot 在抓取重定向网页时是否遇到问题。诊断下的网络抓取页列出了由于重定向错误导致

JavaWeb(一):Java技术概览

試著忘記壹切 提交于 2019-12-06 07:03:52
一、Java技术体系 在早期,Java被称为Java开发工具包或JDK,是一门与平台(由一组 必需的API组成)紧密耦合的语言。 从1998年底的1.2版本开始,Java技术栈被分割为下面关键部分: Java是一门包含了严格和强类型语法的语言。 Java 2平台标准版本,被称为J2SE,指的是平台以及java.lang和java.io包中包含的类。它是构建Java应用程序的基础。 Java虚拟机或JVM是一个可运行编译后Java代码的软件虚拟机。因为被编译过的Java代码只是字节码,JVM将在运行代码之前,把字节码编译成机器码。JVM还负责管理内存,从而实现了应用程序代码的简化。 Java开发工具包或JDK。它包括了Java语言编译器、文档生成器、与本地代码协作的工具和用于调试平台类的Java源代码。 Java运行时环境或JRE曾经并且现在也仍是终端用户用于运行编译后Java应用程序的软件。它包含了JVM但不含任何JDK中的开发工具。而JDK包含了一个JRE(即jdk既包含开发工具又包含JRE)。 上述5个组件曾经都只是 规范 ,而不是实现。任何公司都可以通过规范实现Java技术栈,比如IBM有自己的JDK。开源社区则形成了OpenJDK项目,该项目提供Java栈的开源实现。 我们在Oracle网站下载的JDK,实际也是一种实现,sun公司最初就提供了Java、J2SE、JVM

从Python安装到语法基础,这才是初学者都能懂的爬虫教程

拥有回忆 提交于 2019-12-06 05:32:41
Python和PyCharm的安装:学会Python和PyCharm的安装方法 变量和字符串:学会使用变量和字符串的基本用法 函数与控制语句:学会Python循环、判断语句、循环语句和函数的使用 Python数据结构:理解和使用列表、字典、元组和集合 Python文件操作:学习使用Python建立文件并写入数据 Python面向对象:了解Python中类的定义和使用方法 01 Python与PyCharm安装 “工欲善其事,必先利其器”,本节介绍Python环境的安装和Python的集成开发环境(IDE)PyCharm的安装。 Python安装(Windows、Mac和Linux) 当前主流的Python版本为2.x和3.x。由于Python 2第三方库更多(很多库没有向Python 3转移),企业普遍使用Python 2。如果作为学习和研究的话,建议使用Python 3,因为它是未来的发展方向。所以本教程选择Python 3的环境。 1.1 Windows中安装Python 3 在Windows系统中安装Python 3,请参照下面的步骤进行。 打开浏览器,访问Python官网( https://www.python.org/ )。 光标移动至Downloads链接,单击Windows链接。 根据自己的Windows版本(32位或64位),下载相应的Python 3.5版本