第一:确认自己的Python版本3.6.x(因该版本与pyspider较为适应,其他版本易出错)

  如果不是3.6版本的,且想将版本替换成3.6版本的有以下处理方法:

  1.再装一个3.6版本python,在pycharm中另外设置一个解释器路径只想python3.6

  2.删除python:

    1)通过控制面板删除,或者原python安装包中uninstall方法进行删除

    2)然后找到原来python安装路径,将路径上的python文件夹删除(路径可以在第一步前通过环境变量找到)

第二:安装phantomjs,并配置环境变量

  phantomjs下载地址:https://phantomjs.org/download.html

  下载并解压后,将路径手动添加至环境变量

第三:创建pyspider 的虚拟环境

  养成习惯,一般而言,一个项目是一个虚拟环境,目的是防止外部安装包之间产生冲突导致代码出错

  具体步骤,面向百度,地址:https://jingyan.baidu.com/article/91f5db1b07b5b01c7f05e33b.html

  简单总结:

    1)创建一个文件夹供虚拟环境使用

    2)通过控制台进入该文件夹下,使用pip install virtualenv 安装虚拟环境创建需要的模块包

    3)通过命令创建虚拟环境 virtualenv pyspider(创建一个名为pyspider的虚拟环境,命令格式:virtualenv 环境名)

      但此时可能会复制原本存在的第三方安装包进入虚拟环境,为防止第三方安装包与pyspider所需第三方包产生冲突,对上述命令行进行再次修改

      virtualenv --no-site-packages pyspider 

      即:通过添加 --no-site-packages 命令行来阻碍复制第三方包

  虚拟环境命令:(venv:虚拟环境名)

    1)创建虚拟环境

     virtualenv venv

    2)为环境指定Python解释器:

     virtualenv -p c:\python27\python.exe venv

    3)激活虚拟环境

     activate venv

    4)停止虚拟环境

     deactivate

    5)删除虚拟环境

     rmvirtualenv venv 

    6)查看当前已创建的虚拟环境

     workon

    7)切换虚拟环境

     workon venv

    

第四:进入到第三步创建的环境中装pypsider模块包

  1.下载 pyspider(使用国内镜像源)

  pip install pyspider -i https://pypi.tuna.tsinghua.edu.cn/simple 

  2.运行 pyspider 运行报如下错误:

  Deprecated option 'domaincontroller': use 'http_authenticator.domain_controller' instead.

  解决方案:

  删除wsgidav 然后重新安装2.4.1版本

  使用 pip install wsgidav==2.4.1 直接指定wsgidav的版本,进行覆盖安装

  3.再次运行 pyspider

  报错 cannot import name 'DispatcherMiddleware'

  解决方案:

  卸载 pip uninstall werkzeug

  安装指定版本 pip install werkzeug==0.16.0

  4.再次运行 pyspider 运行成功

  成功后在终端显示如下:

  

  在网页端显示如下:

  

只此,pyspider入门阶段的环境基本配置完毕。

pyspider的环境安装的更多相关文章

  1. python3爬虫_环境安装

    一.环境安装 1.python3安装 官网:https://www.python.org/downloads/ 64 位系统可以下载 Windows x86-64 executable install ...

  2. 使用专业的消息队列产品rabbitmq之centos7环境安装

      我们在项目开发的时候都不可避免的会有异步化的问题,比较好的解决方案就是使用消息队列,可供选择的队列产品也有很多,比如轻量级的redis, 当然还有重量级的专业产品rabbitmq,rabbitmq ...

  3. Linux下xampp集成环境安装配置方法 、部署bugfree及部署禅道

    XAMPP(Apache+MySQL+PHP+PERL)是一个功能强大的建站集成软件包.XAMPP 是一个易于安装且包含 MySQL.PHP 和 Perl 的 Apache 发行版.XAMPP 的确非 ...

  4. node.js环境安装,及连接mongodb测试

    1.node.js环境安装 npm config set python python2.7npm config set msvs_version 2013npm config set registry ...

  5. 谈谈React Native环境安装中我遇到的坑

    谈谈React Native环境安装 这个坑把我困了好久,真的是接近崩溃的边缘...整理出来分享给大家,希望遇到跟我一样问题的小伙伴能尽快找到答案. 首先,这是在初始化App之后,react-nati ...

  6. Kali Linux渗透测试实战 1.2 环境安装及初始化

    1.2 环境安装及初始化 目录(?)[-] 环境安装及初始化 下载映像 安装虚拟机 安装Kali Linux 安装中文输入法 安装VirtualBox增强工具 配置共享目录和剪贴板 运行 Metasp ...

  7. Linux初学 - Elasticsearch环境安装

    下载 https://www.elastic.co/downloads/elasticsearch 安装 rpm -ivh 也可以双击rpm包安装 修改elastaticsearch host配置 修 ...

  8. Win7下Python2.7环境安装paramiko模块

    Win7下Python2.7环境安装paramiko模块,经过安装并测试成功,整理文档如下: 1.下载安装Windows版本的Python2.7,我默认装在C:\Python27 我的python已经 ...

  9. [ALM]一步一步搭建MS ALM环境 - 安装TFS + SQL SERVER

    描述: 安装SQL SERVER 2012,安装TFS 2013,配置TFS,挽起袖子,准备干活儿 步骤: 1,打开Hyper-V Manager,参考[Hyper-V]使用操作系统模板创建新的虚拟机 ...

随机推荐

  1. Ansible 自动化部署

    参考 BLOG: Ansible 系列模块 Ansible 部署与使用 Ansible Book Ansible Ansible 是一个自动化统一配置管理工具,自动化主要体现在 Ansible 集成了 ...

  2. LEETCODE - 1228【等差数列中缺失的数字】

    C++: class Solution { public:     int missingNumber(vector<int>& arr) {         int subnum ...

  3. ZOJ 3430 Detect the Virus(AC自动机 + 模拟)题解

    题意:问你主串有几种模式串.但是所有串都是加密的,先解码.解码过程为:先把串按照他给的映射表变成6位数二进制数,然后首尾衔接变成二进制长串,再8位8位取变成新的数,不够的补0.因为最多可能到255,所 ...

  4. Netty & websockets

    Netty & websockets Netty is a non-blocking I/O client-server framework for the development of Ja ...

  5. windows driver 简单的驱动和通信

    sysmain.c #pragma once #pragma warning(disable: 4100) #include <ntifs.h> #include <ntddk.h& ...

  6. Flutter: 监听App显示,隐藏

    关键代码 class _MyAppState extends State<MyApp> with WidgetsBindingObserver { @override void initS ...

  7. 两年Java,去字节跳动写Python和Go

    前言 2019年5月,在收到offer邮件的那一刻,我仍然不敢相信自己这一番际遇.经历了七场面试,终于得偿所望,拿到了字节跳动的offer. 做加入大厂的决定并不是巧合.在多年的职业生涯里,我曾多次对 ...

  8. TypeError: Object of type 'datetime' is not JSON serializable

    我的描述:我在flask框架中引用orm查数据库并返回数据,出现此类问题,如下图: 解决方案: 1.从表面意思看,就是说datetime时间类型无法被序列化.于是我百度了网上的同事的解答,大多说是时间 ...

  9. Redis高频面试题总结

    通过面试多家大型互联网企业,总结了如下的高频面试题目: 1.redis 过期键的删除策略? (1)定时删除:在设置键的过期时间的同时,创建一个定时器 timer). 让定时器在键的过期时间来临时,立即 ...

  10. (十一) 数据库查询处理之连接(Join)

    (十一) 数据库查询处理之连接(Join) 1. 连接操作的一个例子 把外层关系和内层关系中满足一定关系的属性值拼接成一个新的元组 一种现在仍然十分有用的优化思路Late Materializatio ...