博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
为编写网络爬虫程序安装Python3.5
阅读量:6125 次
发布时间:2019-06-21

本文共 3541 字,大约阅读时间需要 11 分钟。

图片描述

1. 下载Python3.5.1安装包

1.1 进入python官网,点击menu->downloads,网址:

1.2 根据系统选择32位还是64位,这里下载的可执行exe为64位安装包

图片描述

2. 安装Python3.5

2.1 双击打开安装包,选择自定义路径(注意安装路径中尽量不要含有有中文或者空格),然后选中Add Python 3.5 to PATH(将Python安装路径添加到系统变量Path中,这样做以后在任意目录下都可以执行pyhton命令了)

图片描述

2.2 默认全选,Next

图片描述

2.3 修改安装路径,勾选加上Install for all user为所有用户安装和Precompile standard library 预编译标准库,然后点击Install

图片描述

2.4 等待安装完成

图片描述

图片描述

2.5 验证,使用快捷键win + R 或 右键开始选择运行,输入cmd回车,打开命令提示符窗口,然后输入python->回车,若出现python版本信息则软件安装完成

图片描述

3. 简单实践,敲一个简单小爬虫程序

3.1 安装lxml库,由于直接使用pip lxml 对于3.0x以上的版本来说经常会出现版本不适应而失败,所以这里介绍直接使用whl文件安装

3.1.1 下载对应python3.5版本的lxml库,下载网址:

图片描述

3.1.2 同检查python是否安装成功一样,使用快捷键win + R 或 右键开始选择运行,输入cmd回车,打开命令提示符窗口,然后

pip install E:\demo\lxml-3.6.4-cp35-cp35m-win_amd64.whl(下载的lxml库whl文件存放路径)

可能碰到问题,pip的版本低了,需要更新一下pip的版本。更新pip版本命令:

python -m pip install -U pip

更新完成后,再次使用pip命令:

pip install E:\demo\lxml-3.6.4-cp35-cp35m-win_amd64.whl

图片描述

3.2 Lxml库安装成功后,环境就准备好了, 可以开始敲代码了

3.2.1引入Gooseeker规则提取器模块gooseeker.py(),在自定义目录下创建gooseeker.py文件,如:这里为E:Demogooseeker.py,再以记事本打开,复制下面的代码粘贴

#!/usr/bin/python# -*- coding: utf-8 -*-# 模块名: gooseeker# 类名: GsExtractor# Version: 2.0# 说明: html内容提取器# 功能: 使用xslt作为模板,快速提取HTML DOM中的内容。# released by 集搜客(http://www.gooseeker.com) on May 18, 2016# github: https://github.com/FullerHua/jisou/core/gooseeker.pyfrom urllib import requestfrom urllib.parse import quotefrom lxml import etreeimport timeclass GsExtractor(object):    def _init_(self):        self.xslt = ""    # 从文件读取xslt    def setXsltFromFile(self , xsltFilePath):        file = open(xsltFilePath , 'r' , encoding='UTF-8')        try:            self.xslt = file.read()        finally:            file.close()    # 从字符串获得xslt    def setXsltFromMem(self , xsltStr):        self.xslt = xsltStr    # 通过GooSeeker API接口获得xslt    def setXsltFromAPI(self , APIKey , theme, middle=None, bname=None):        apiurl = "http://www.gooseeker.com/api/getextractor?key="+ APIKey +"&theme="+quote(theme)        if (middle):            apiurl = apiurl + "&middle="+quote(middle)        if (bname):            apiurl = apiurl + "&bname="+quote(bname)        apiconn = request.urlopen(apiurl)        self.xslt = apiconn.read()    # 返回当前xslt    def getXslt(self):        return self.xslt    # 提取方法,入参是一个HTML DOM对象,返回是提取结果    def extract(self , html):        xslt_root = etree.XML(self.xslt)        transform = etree.XSLT(xslt_root)        result_tree = transform(html)        return result_tree    # 提取方法,入参是html源码,返回是提取结果    def extractHTML(self , html):        doc = etree.HTML(html)        return self.extract(doc)

3.2.2 在提取器模块gooseeker.py同级目录下创建一个.py后缀文件,如这里为E:Demofirst.py,再以记事本打开,敲入代码:

# -*- coding: utf-8 -*-# 使用gsExtractor类的示例程序# 访问集搜客论坛,以xslt为模板提取论坛内容# xslt保存在xslt_bbs.xml中# 采集结果保存在result.xml中import osfrom urllib import requestfrom lxml import etreefrom gooseeker import GsExtractor# 访问并读取网页内容url = "http://www.gooseeker.com/cn/forum/7"conn = request.urlopen(url)doc = etree.HTML(conn.read())bbsExtra = GsExtractor()   bbsExtra.setXsltFromAPI("31d24931e043e2d5364d03b8ff9cc77e" , "gooseeker_bbs_xslt")   # 设置xslt抓取规则result = bbsExtra.extract(doc)   # 调用extract方法提取所需内容# 当前目录current_path = os.getcwd()file_path = current_path + "/result.xml"# 保存结果open(file_path,"wb").write(result)# 打印出结果print(str(result).encode('gbk','ignore').decode('gbk'))

3.2.3 执行first.py,使用快捷键win + R 或 右键开始选择运行,输入cmd回车,打开命令提示窗口,进入first.py文件所在目录,输入命令 :python first.py 回车

图片描述

3.2.4 查看保存结果文件,进入first.py文件所在目录,查看名称为result的xml文件(即采集结果)

图片描述

4. 总结

安装步骤还是很简单,主要需要注意的是:

  1. 对应系统版本安装;

  2. 将安装路径加入系统环境变量Path。

后面将会讲到如何结合Scrapy快速开发Python爬虫。

5. 集搜客GooSeeker开源代码下载源

6.相关文章

7. 文章修改历史

2016-09-28:V1.0

2016-10-25:补充3.2.1代码

转载地址:http://fibua.baihongyu.com/

你可能感兴趣的文章
【总结整理】JQuery基础学习---样式篇
查看>>
查询个人站点的文章、分类和标签查询
查看>>
基础知识:数字、字符串、列表 的类型及内置方法
查看>>
JSP的隐式对象
查看>>
P127、面试题20:顺时针打印矩阵
查看>>
JS图片跟着鼠标跑效果
查看>>
[SCOI2005][BZOJ 1084]最大子矩阵
查看>>
学习笔记之Data Visualization
查看>>
Leetcode 3. Longest Substring Without Repeating Characters
查看>>
【FJOI2015】金币换位问题
查看>>
数学之美系列二十 -- 自然语言处理的教父 马库斯
查看>>
Android实现自定义位置无标题Dialog
查看>>
面试总结
查看>>
Chrome浏览器播放HTML5音频没声音的解决方案
查看>>
easyui datagrid 行编辑功能
查看>>
类,对象与实例变量
查看>>
HDU 2818 (矢量并查集)
查看>>
【转】php字符串加密解密
查看>>
22. linux 常用命令
查看>>
ASP.Net 使用GridView模板删除一行的用法
查看>>