python网络爬虫教程-终于明了python网络爬虫从入门到实践
Python是一款功能强大的脚本语言,具有丰富和强大的库,重要的是,它还具有很强的可读性,易用易学,非常适合编程初学者入门。以下是小编为你整理的python网络爬虫从入门到实践
环境配置:下载Python并安装,安装完成后,配置windows的环境变量:打开高级系统设置,将Python的安装目录添加到系统变量path中。配置完成后,在cmd命令行,输入命令"Python",出现Python版本号,即配置成功
教程学习:上网百度下载一份Python教程,进行学习。初学者入门的话,没必要整份教程看一遍,只需要将基础的语法及模块挑出学习,如:字符串、列表、字典、元组、文件及数据库的操作
上机实践:单纯地学习教程绝对是没法学好编程语言的,我们需要通过实践将理论知识转为实打实的技能。在学习的过程中,可以在Ulipad上尝试编写脚本,也可以将教程上的代码自己敲一遍。总之,一定要“多敲”
下载安装步骤
趁着在家有个干净的windows环境,我自己尝试从头配置Python+webdriver,公司的配置是前辈已经帮忙配好的。本文档在于帮助菜鸟扫盲。有些内容是引用虫师的
1.下载python,好吧官网有,直接exe安装吧少年,推荐下载py2.7,3.3不太稳定(说错别砍我,我很菜)
2.下载setuptools(python的基础包工具),同样是exe 文件,默认会找到python 的安装路径,将安装到C:Python27Libsite-packages 目录下
3.下载pip,(python安装包管理工具),我默认解压在了C:pip-1.3.1 目录下
4.打开命令提示符(开始---cmd 回车)进入C:pip-1.3.1目录下输入:
C:pip-1.3.1 > python setup.py install
(如果提示python 不是内部或外部命令!别急,去配置一下环境变量吧)
5.再切换到C:Python27Scripts 目录下输入:
C:Python27Scripts > easy_install pip
6、安装selenium,(下载地址: https://pypi.python.org/pypi/selenium )
如果是联网状态的话,可以直接在C:Python27Scripts 下输入命令安装:
C:Python27Scripts > pip install -U selenium
如果没联网(这个一般不太可能),下载selenium 2.33.0 (目前的最新版本)
并解压把整个目录放到C:Python27Libsite-packages 目录下。
7、下载selenium 的服务端(https://code.google.com/p/selenium/)在页面的左侧
列表中找到
selenium-server-standalone-XXX.jar
对!就是这个东西,把它下载下来并解压;
在selenium-server-standalone-xxx.jar 目录下使用命令java -jar
selenium-server-standalone-xxx.jar 启动(如果打不开,查看是否端口被占用:
netstat -aon|findstr 4444)。
至此步骤完毕
接下来是一些注意事项,是我配置想启动的过程中遇到的问题,希望对你们有所帮助:
1.我写了个入门的python+webdriver脚本:
出现error:
Traceback (most recent call last): File "C:Python27Libaa.py", line 1, in from selenium import webdriverImportError: No module named selenium
解决方案:没有找到selenium,好吧他说selenium没装,但是我真的安装的啊。我勒个去。于是我把我之前selenium-2.35.0.tar删了,在线用pip命令操作安装selenium,发现用from selenium import webdriver还是报错,于是找啊找,参见该博客http://blog.sina.com.cn/s/blog_416544cb0101kzua.html
重启电脑,这里如果不重启,不生效,OK,这个重启电脑搞定这个问题
2.我相信很多人会去手写python脚本
请大家注意调用浏览器首字母要大写。。。(今天差点弄死我),如:Firefox,Chrome,Ie
3.注意得把IEDriverServer跟chromedriver放到对应浏览器的安装目录下
配置浏览器的环境变量Path:如
Chrome:C:UserswyxAppDataLocalGoogleChromeApplication
4.在python的安装目录下也放IEDriverServer,chromedriver
Python入门
第一步:Python入门
这一阶段,你需要学习的知识点:
如果学习能力还不错的话,这一阶段,只需要一个多月的时间
教程如下:
Python入门教程完整版(懂中文就能学会)http://pan.baidu.com/s/1miwZ1WW
第二步:熟悉Scrapy各模块
教程简介:
(1)Scrapy的简介。
主要知识点:Scrapy的架构和运作流程。
(2)搭建开发环境:
主要知识点:Windows及Linux环境下Scrapy的安装。
(3)Scrapy Shell以及Scrapy Selectors的使用。
(4)使用Scrapy完成网站信息的爬取。
主要知识点:创建Scrapy项目(scrapy startproject)、定义提取的结构化数据(Item)、编写爬取网站的 Spider 并提取出结构化数据(Item)、编写 Item Pipelines 来存储提取到的Item(即结构化数据)。
教程下载地址:Scrapy教程 http://pan.baidu.com/s/1dF3qhFV
第三步:Django教程
教程简介:
(1)Django的简介。
主要知识点:MVC设计模式以及Django的MVT。
(2)搭建开发环境:
主要知识点:Linux的虚拟环境搭建和应用、Django的安装。
(3)利用Django框架完成简单的图书项目:
主要知识点:编写模型,使用API与数据库交互、使用Django的后台管理管理数据、通过视图接收请求,通过模型获
教程下载地址:Django教程 http://pan.baidu.com/s/1nvFlfU5
第四部:Python全栈教程
教程简介:
(1)HTTP协议的分析:
HTTP格式。
包含知识点:HTTP GET请求的格式、HTTP POST请求的格式、HTTP响应的格式。
(2)HTTP协议的使用(实现Web静态服务器):
利用HTTP协议实现Web静态服务器。
包含知识点:浏览器首先向服务器发送HTTP请求、服务器向浏览器返回HTTP响应、使用类。
(3)服务器动态资源请求(实现Web动态服务器):
利用WSGI实现Web动态服务器。
包含知识点:浏览器请求动态页面的过程介绍、WSGI的介绍、定义WSGI接口。
教程下载地址:
Python全栈教程 http://pan.baidu.com/s/1nvFlfU
package
package com.baidu;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import org.apache.http.HttpEntity;import org.apache.http.HttpStatus;import org.apache.http.client.methods.CloseableHttpResponse;import org.apache.http.client.methods.HttpGet;import
org.apache.http.impl.client.CloseableHttpClient;import org.apache.http.impl.client.HttpClients;public class HttpGetUtils { public static void main(String[] args) { // TODO Auto-generated method stub //https://v.qq.com/ http://www.youku.com/ http://m.sunlands.com String str=get("http://m.sunlands.com"); System.out.println(str); } private static String get(String url) { String result = ""; try { //获取httpclient实例 CloseableHttpClient httpclient = HttpClients.createDefault(); //获取方法实例。GET HttpGet httpGet = new HttpGet(url);
//执行方法得到响应 CloseableHttpResponse response = httpclient.execute(httpGet); try { //如果正确执行而且返回值正确,即可解析 if (response != null && response.getStatusLine().getStatusCode() == HttpStatus.SC_OK) { System.out.println(response.getStatusLine()); HttpEntity entity = response.getEntity(); //从输入流中解析结果 result = readResponse(entity, "utf-8"); } } finally { httpclient.close(); response.close(); } }catch (Exception e){ e.printStackTrace(); } return result; } private static String readResponse(HttpEntity resEntity, String charset) { StringBuffer res = new StringBuffer(); BufferedReader reader = null; try { if (resEntity == null) { return null; } reader = new BufferedReader(new InputStreamReader( resEntity.getContent(), charset)); String line = null; while ((line = reader.readLine()) != null) { res.append(line); } } catch (Exception e) { e.printStackTrace(); } finally { try { if (reader != null) { reader.close(); } } catch (IOException e) { } } return res.toString(); }}
python网络爬虫教程-终于明了python网络爬虫从入门到实践相关推荐
- python菜鸟基础教程-终于懂得python入门菜鸟教程
Python语言是一种典型的脚本语言,简洁,语法约束少,接近人类语言.有丰富的数据结构,例如列表.字典.集合等.具有可移植性,支持面向过程和面向对象编程,并且开源.以下是小编为你整理的python入门 ...
- 零基础Python完全自学教程15:Python中的列表
欢迎你来到站长学堂,学习站长在线出品的在线课程<零基础 Python完全自学教程>今天给大家分享的是第14课< Python中的列表 >.本节课是一个大课,我分了这些知识点进行 ...
- 零基础Python完全自学教程3:Python开发工具介绍
欢迎你来到站长在线的站长学堂学习Python课程.今天<零基础Python完全自学教程>分享的主题是<Python开发工具介绍>. 作为一个Python程序员需要对一些常用的P ...
- 好用到爆的Python自动化办公教程pdf,Python × Excel × Word × PPT 一次搞定
在这个自动化时代,我们有很多重复无聊的工作要做.想想这些你不再需要一次又一次地做的无聊的事情,让它自动化,让你的生活更轻松.那么在本文中,我将向您介绍一个好用到爆的Python自动化办公教程pdf,P ...
- 零基础Python完全自学教程11:Python中的选择语句
欢迎你来到站长学堂,学习站长在线出品的在线课程<零基础Python完全自学教程>今天给大家分享的是第11课<Python中的选择语句>.本节课主要内容有:最简单的if语句.if ...
- python交互式编程在哪里_终于明了python交互式编程入门
Python是一款功能强大的脚本语言,具有丰富和强大的库,重要的是,它还具有很强的可读性,易用易学,非常适合编程初学者入门.以下是小编为你整理的python交互式编程入门 环境配置:下载Python并 ...
- python新手入门教程-终于知晓python新手练习教程
Python是一种解释型.面向对象.动态数据类型的高级程序设计语言.作为今年来越来越流行的语言,我们该如何学习或者转行学习Python呢,这里小迹为大家介绍如何入门学习Python.以下是小编为你整理 ...
- python常用模块教程_盘点Python常用的模块和包
模块 1.定义 计算机在开发过程中,代码越写越多,也就越难以维护,所以为了编写可维护的代码,我们会把函数进行分组,放在不同的文件里.在python里,一个.py文件就是一个模块. 2.优点: 提高代码 ...
- 400集python入门到精通_2020年最强Python学习路线+教程,400集带你从入门到精通
好多网友说自己刚刚开始学习开发,买了一些纸质的教材,然后呢也在网上看一些视频,但是总觉得他这样学习,毫无目的性,也不知道哪些知识点重要,哪些知识点不重要,也不知道自己能不能学得会那该学到什么阶段去找工 ...
最新文章
- 基于wifi的单片机无线通信研究_SKYLAB:智能家居无线协议WiFi/BLE/Zigbee介绍与对比...
- tl wn322g linux驱动下载,TL-WN322G+ 2.0_WN422G+ 2.0驱动程序
- Python 删除列表中的重复数据
- 微软MSDN中文网络广播(Webcast)——Visual Studio 2010 ALM应用实践系列课程预告(2011)...
- CF248E Piglet's Birthday(概率dp)
- python的匿名函数返回值_Python匿名函数返回值输出问题望指点
- python爬虫什么结构好_python爬虫入门:爬虫基础了解一下 !! 盘它
- 那些年黑了你的微软BUG
- 进程线程及堆栈关系的总结
- iOS硬解码H264视频流
- NOIP2016普及组T1(买铅笔)题解
- HKC PG27P3Q 评测
- 编程疑难杂症の无法剔除的神秘重复记录
- 原 自学JVAVA---(64)--(内功心法【62】)三大案例再升级
- matlab化石墨烯,基于MATLAB的石墨烯场效应晶体管电学特性研究
- RxSwift | 万物皆 rx 的原因
- 【我参加NVIDIA Sky Hackathon】CV篇
- colorkey唇釉是否安全_colorkey镜面唇釉好用吗
- 运放技术——基本电路分析
- 高度塌陷原因及其解决办法