最近在学习爬虫的编写,使用selenium模块时候,遇到了很多坑,本blog的目的是总结一下遇到的坑和解决办法,以便后来人少走弯路!

以下介绍均以Python3.x为基准进行,基于windows平台的。

1. Selenium配置

我们在做爬虫的时候,避免不了要使用selenium模块,但是它不是python的标准库,所以需要自行安装。

那么如何安装selenium呢,这时候就用到了pip这个工具。

1. 首先我们需要下载pip:

所谓pip,即Python Install Packet(python安装包)。

2. 然后我们解压下载的pip,打开cmd命令控制台,cd到刚才解压的目录:

可以看到,python不是内部命令,执行失败;这是由于python的可执行文件路径没有加入到windows的环境变量里。

3. 设置环境变量:

按照如下的顺序:

计算机 -> 属性 -> 高级系统设置 -> 高级 -> 环境变量 -> path







将python.exe所在路径添加到path中(注意,不同路径间的隔离使用;)

4. 验证pip是否安装成功

使用如下命令(使用此命令之前,同样需要将pip所在的目录加入到环境变量中,默认的pip路径为python.exe同目录文件夹Scripts下):

  • pip list

5. 安装selenium模块

采用如下命令:

  • pip install selenium

至此,selenium模块算是安装完成了

6. 配置selenium使其支持不同浏览器

开发中,我们一般采用chrome或firefox,因此我以这两款为准进行讲解。

当我们安装完成selenium模块,准备使用其进行编码时,突然发现,又有问题出现了:



发生以上原因是因为: 缺少Chrome/Firefox的webdriver驱动。

驱动的下载地址:

将下载好的驱动解压,然后放到与python.exe同一个目录中;

到此处,你可以试试如下代码:

# coding = utf-8
from time import sleep
from selenium import webdriver browser = webdriver.Firefox() browser.get(r"http://www.baidu.com")
browser.find_element_by_id("kw").send_keys("python")
browser.find_element_by_id("su").click()
sleep(5)
browser.quit()

将会打开一个新的firefox窗口,算是selenium配置成功。

2. Pycharm 2017.3破解与使用

Pycharm是玩python、web开发、爬虫等等必不可少的工具,其优秀性不必多言,谁用谁知道!

1. 下载并安装 Pycharm2017



安装不用多说了吧!

2. 破解pycharm

进入Pycharm, 点击Help -> Register

然后,去下载一个破解软件:

按照下图进行设置:

输入完成后,点击Active,一切都ok了!

另外,破解的专业网站地址:

3. 注册完成后,我们将开始我们第一个项目:

# coding = utf-8
from time import sleep
from selenium import webdriver browser = webdriver.Firefox() browser.get(r"http://www.baidu.com")
browser.find_element_by_id("kw").send_keys("python")
browser.find_element_by_id("su").click()
sleep(5)
browser.quit()

运行过程中,可能会出现如下的错误:



虽然我们安装了selenium,但是Pycharm找不到这个模块(包),这怎么回事呢?

原因就是我们使用的python 解释器的问题(未使用系统默认的解释器)

可做如下修改:

  • File -> Settings -> Project coding -> Project interpreter

选择所需要的Python解释器。

如下拉列表中没有对应的系统Python解释器,我们可以自己添加:



设置完以上之后,重新回到代码区运行上述代码,一切都ok了!

至此,大功告成!!!

网络爬虫(一):配置selenium、pycharm(windows平台)的更多相关文章

  1. 使用Nginx配置NodeJs程序(Windows平台)

    简介 Nginx("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 服务器. Nginx 是由 Igor Sysoev ...

  2. 网络爬虫:利用selenium,pyquery库抓取并处理京东上的图片并存储到使用mongdb数据库进行存储

    一,环境的搭建已经简单的工具介绍 1.selenium,一个用于Web应用程序测试的工具.其特点是直接运行在浏览器中,就像真正的用户在操作一样.新版本selenium2集成了 Selenium 1.0 ...

  3. python3编写网络爬虫16-使用selenium 爬取淘宝商品信息

    一.使用selenium 模拟浏览器操作爬取淘宝商品信息 之前我们已经成功尝试分析Ajax来抓取相关数据,但是并不是所有页面都可以通过分析Ajax来完成抓取.比如,淘宝,它的整个页面数据确实也是通过A ...

  4. Python 网络爬虫 005 (编程) 如何编写一个可以 下载(或叫:爬取)一个网页 的网络爬虫

    如何编写一个可以 下载(或叫:爬取)一个网页 的网络爬虫 使用的系统:Windows 10 64位 Python 语言版本:Python 2.7.10 V 使用的编程 Python 的集成开发环境:P ...

  5. NodeJS网络爬虫

      原文地址:NodeJS网络爬虫   网上有很多其他语言平台版本的网络爬虫,比如Python,Java.那怎么能少得了我们无所不能的javascript呢

  6. 【python 网络爬虫】之scrapy系列

    网络爬虫之scripy系列 [scrapy网络爬虫]之0 爬虫与反扒 [scrapy网络爬虫]之一 scrapy框架简介和基础应用 [scrapy网络爬虫]之二 持久化操作 [scrapy网络爬虫]之 ...

  7. 网络爬虫之Windows环境Heritrix3.0配置指南

    一.引言: 最近在忙某个商业银行的项目,需要引入外部互联网数据作为参考,作为技术选型阶段的工作,之前已经确定了中文分词工具,下一个话题就是网络爬虫的选择,目标很明确,需要下载一些财经网站的新闻信息,然 ...

  8. 基于Heritrix的特定主题的网络爬虫配置与实现

    建议在了解了一定网络爬虫的基本原理和Heritrix的架构知识后进行配置和扩展.相关博文:http://www.cnblogs.com/hustfly/p/3441747.html 摘要 随着网络时代 ...

  9. Python在windows平台的多版本配置

    Python在windows平台的多版本配置 快速阅读: ​ python在windows平台的环境变量以及多版本配置 ,以及pycharm如何安装包,以及安装包出错时如何排查. 1.python环境 ...

随机推荐

  1. think in java 手记(一)

    工作之余,不知道要做些什么.该做的事情都完成的差不多了,想看一下spring的东西,毕竟这些东西用的多.但是又想看一下关于javaee的东西,这个里面的设计模式多.想了一会儿,觉得这些无非都是工具,j ...

  2. ASP.NET MVC中设置跨域

    ASP.NET MVC中设置跨域 1.什么是跨域请求 js禁止向不是当前域名的网站发起一次ajax请求,即使成功respone了数据,但是你的js仍然会报错.这是JS的同源策略限制,JS控制的并不是我 ...

  3. leetcode 缺失数字

    给定一个包含 0, 1, 2, ..., n 中 n 个数的序列,找出 0 .. n 中没有出现在序列中的那个数. 示例 1: 输入: [3,0,1] 输出: 2 示例 2: 输入: [9,6,4,2 ...

  4. mysql之使用centos7实现主从复制(读写分离)的实现过程

    什么是主从复制? 主从复制,是用来建立一个和主数据库完全一样的数据库环境,称为从数据库:主数据库一般是准实时的业务数据库. 主从复制的作用(好处)! 1.做数据的热备,作为后备数据库,主数据库服务器故 ...

  5. NetCore入门篇:(十一)NetCore项目读取配置文件appsettings.json

    一.简介 1.读取配置文件是开发过程中使用非常频繁的操作.属称”不能写死“ 二.NetCore读取配置文件 1.新建一个静态公共变量,属称单例. 2.在程序Startup启动时,将系统变量传递给单例. ...

  6. Ocelot中文文档入门

    入门 Ocelot仅适用于.NET Core,目前是根据netstandard2.0构建的,如果Ocelot适合您,这个文档可能会有用. .NET Core 2.1 安装NuGet包 使用nuget安 ...

  7. xt

    using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...

  8. 修改ActiveReports验证文字“给不能为 null 的参数指定一个 null 值”

    转:http://gcdn.gcpowertools.com.cn/showtopic-13759.html ActiveReports官方网站:http://www.gcpowertools.com ...

  9. mybatis中单个参数的引用

    单个参数时在test条件中不能用参数名来引用,可以使用_parameter

  10. .Net Core命令行配置-配置介绍

    1.使用VS2017 创建一个控制台应用程序,选中控制台应用(.NET Core) 2. 使用程序包管理控制台键入 Install-Package Microsoft.AspNetCore -Vers ...