最近在学习爬虫的编写,使用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. MVC4 项目开发日志(1)

    最近一直在定义一个功能全面,层次结构分明的框架.一边学习一边应用.

  2. NLayerAppV3--DDD之领域层

    回顾:NLayerAppV3是一个使用.net 2.1实现的经典DDD的分层架构的项目. NLayerAppV3是在NLayerAppV2的基础上,使用.net core2.1进行重新构建的:它包含了 ...

  3. matlab学习笔记---(1)

    Matlab学习笔记 一. Desktop Basics (Matlab 基础知识) 当你打开Matlab的时候,matlab按照以下默认的方式展示出来. 该桌面主要包括以下几部分内容: 当前文件夹: ...

  4. IPv6 Scapy Samples

    IPv6 ICMP icmp ipv6 request i=IPv6() i.dst="2001:db8:dead::1" q=ICMPv6EchoRequest() p=(i/q ...

  5. 简单版nginx lua 完成定向流量分发策略

    本文链接:https://www.cnblogs.com/zhenghongxin/p/9131362.html 公司业务前端是使用 “分发层+应用层” 双层nginx架构,目的是为了提高缓存的命中率 ...

  6. 768. Max Chunks To Make Sorted II

    This question is the same as "Max Chunks to Make Sorted" except the integers of the given ...

  7. js string 和 json 互转

    var o = JSON.parse('{"a": 8}'); JSON. stringify(o);

  8. 80端口被系统进程PID-4占用解决办法

    今天因为工程需要就把tomcat服务器的端口改成了80了,可是一启动就出现问题了 发现报错信息是端口占用了,于是我马上就在了命令行敲入了netstat -ano查看端口占用情况 终于发现是PID为4的 ...

  9. 实现一个算法,寻找字符串中出现次数最少的、并且首次出现位置最前的字符 如"cbaacfdeaebb",符合要求的是"f",因为他只出现了一次(次数最少)。并且比其他只出现一次的字符(如"d")首次出现的位置最靠前。

    实现一个算法,寻找字符串中出现次数最少的.并且首次出现位置最前的字符如"cbaacfdeaebb",符合要求的是"f",因为他只出现了一次(次数最少).并且比其 ...

  10. 匹配img标签的正则表达式

    $preg = '/<img.*?src=[\"|\']?(.*?)[\"|\']?\s.*?>/i';//匹配img标签的正则表达式 preg_match_all($ ...