selenium python 环境搭建(64位 windows)

作者:青岛澄润国际贸易有限公司 来源:www.usabcc.com 发布时间:2017-09-08 23:01:26
selenium python 环境搭建(64位 windows) 之前写了同样的文章,可是后来自己按照给文章再次搭建环境当搭建环境成功后却发现还是无法用。使用from selenium import webdriver,在run的时候却出现ImportError: cannot import name webdriver的提示,但是在Python IDLE里面跑却没有错误,在网上找了很多资料说在控制太中使用import selenium print selenium.__file__去看打印出的文件路径,如果不是下面类似的C:\Python27\lib\site-packages\selenium-2.31.0-py2.7.egg\selenium\__init__.pyc,需要把当前目录下的文件删除或者重命名。我清理注册表反复安装了多次可是还是不行。最后找了很多资料才找到解决的办法,总结了一下大概的原因主要造成的原因是因为系统造成的 主要是我现在电脑是64位的操作系统,python需要的组件中setuptools 目前没有64位的所以这个比较纠结了。最后的解决办法:

  1、到python官网下载一个64位的版本 然后直接安装。

    地址:http://www.python.org/getit/

  (1、)安装就比较弱智了,机械性的直接下一步就行(可以更换一下安装路径)

   (2、)安装好python后记得配置环境变量(直接将python的主路径贴在环境变量的path里面就可以了)

  2、安装setuptools(有两个版本,一个是exe文件但是这个在32位操作系统下好用,但是在64位下不好用,采集软件,所以我们直接使用另外一种方法)

复制代码

1 #!python

2 """Bootstrap setuptools installation

3

4 If you want to use setuptools in your package's setup.py, just include this

5 file in the same directory with it, and add this to the top of your setup.py::

6

7 from ez_setup import use_setuptools

8 use_setuptools()

9

10 If you want to require a specific version of setuptools, set a download

11 mirror, or use an alternate download directory, you can do so by supplying

12 the appropriate options to ``use_setuptools()``.

13

14 This file can also be run as a script to install or upgrade setuptools.

15 """

16 import sys

17 DEFAULT_VERSION = "0.6c11"

18 DEFAULT_URL = "http://pypi.python.org/packages/%s/s/setuptools/" % sys.version[:3]

19

20 md5_data = {

21 'setuptools-0.6b1-py2.3.egg': '8822caf901250d848b996b7f25c6e6ca',

22 'setuptools-0.6b1-py2.4.egg': 'b79a8a403e4502fbb85ee3f1941735cb',

23 'setuptools-0.6b2-py2.3.egg': '5657759d8a6d8fc44070a9d07272d99b',

24 'setuptools-0.6b2-py2.4.egg': '4996a8d169d2be661fa32a6e52e4f82a',

25 'setuptools-0.6b3-py2.3.egg': 'bb31c0fc7399a63579975cad9f5a0618',

26 'setuptools-0.6b3-py2.4.egg': '38a8c6b3d6ecd22247f179f7da669fac',

27 'setuptools-0.6b4-py2.3.egg': '62045a24ed4e1ebc77fe039aa4e6f7e5',

28 'setuptools-0.6b4-py2.4.egg': '4cb2a185d228dacffb2d17f103b3b1c4',

29 'setuptools-0.6c1-py2.3.egg': 'b3f2b5539d65cb7f74ad79127f1a908c',

30 'setuptools-0.6c1-py2.4.egg': 'b45adeda0667d2d2ffe14009364f2a4b',

31 'setuptools-0.6c10-py2.3.egg': 'ce1e2ab5d3a0256456d9fc13800a7090',

32 'setuptools-0.6c10-py2.4.egg': '57d6d9d6e9b80772c59a53a8433a5dd4',

33 'setuptools-0.6c10-py2.5.egg': 'de46ac8b1c97c895572e5e8596aeb8c7',

34 'setuptools-0.6c10-py2.6.egg': '58ea40aef06da02ce641495523a0b7f5',

35 'setuptools-0.6c11-py2.3.egg': '2baeac6e13d414a9d28e7ba5b5a596de',

36 'setuptools-0.6c11-py2.4.egg': 'bd639f9b0eac4c42497034dec2ec0c2b',

37 'setuptools-0.6c11-py2.5.egg': '64c94f3bf7a72a13ec83e0b24f2749b2',

38 'setuptools-0.6c11-py2.6.egg': 'bfa92100bd772d5a213eedd356d64086',

39 'setuptools-0.6c2-py2.3.egg': 'f0064bf6aa2b7d0f3ba0b43f20817c27',

40 'setuptools-0.6c2-py2.4.egg': '616192eec35f47e8ea16cd6a122b7277',

41 'setuptools-0.6c3-py2.3.egg': 'f181fa125dfe85a259c9cd6f1d7b78fa',

42 'setuptools-0.6c3-py2.4.egg': 'e0ed74682c998bfb73bf803a50e7b71e',

43 'setuptools-0.6c3-py2.5.egg': 'abef16fdd61955514841c7c6bd98965e',

44 'setuptools-0.6c4-py2.3.egg': 'b0b9131acab32022bfac7f44c5d7971f',

45 'setuptools-0.6c4-py2.4.egg': '2a1f9656d4fbf3c97bf946c0a124e6e2',

46 'setuptools-0.6c4-py2.5.egg': '8f5a052e32cdb9c72bcf4b5526f28afc',

47 'setuptools-0.6c5-py2.3.egg': 'ee9fd80965da04f2f3e6b3576e9d8167',

48 'setuptools-0.6c5-py2.4.egg': 'afe2adf1c01701ee841761f5bcd8aa64',

49 'setuptools-0.6c5-py2.5.egg': 'a8d3f61494ccaa8714dfed37bccd3d5d',

50 'setuptools-0.6c6-py2.3.egg': '35686b78116a668847237b69d549ec20',

51 'setuptools-0.6c6-py2.4.egg': '3c56af57be3225019260a644430065ab',

52 'setuptools-0.6c6-py2.5.egg': 'b2f8a7520709a5b34f80946de5f02f53',

53 'setuptools-0.6c7-py2.3.egg': '209fdf9adc3a615e5115b725658e13e2',

54 'setuptools-0.6c7-py2.4.egg': '5a8f954807d46a0fb67cf1f26c55a82e',

55 'setuptools-0.6c7-py2.5.egg': '45d2ad28f9750e7434111fde831e8372',

56 'setuptools-0.6c8-py2.3.egg': '50759d29b349db8cfd807ba8303f1902',

57 'setuptools-0.6c8-py2.4.egg': 'cba38d74f7d483c06e9daa6070cce6de',

58 'setuptools-0.6c8-py2.5.egg': '1721747ee329dc150590a58b3e1ac95b',

59 'setuptools-0.6c9-py2.3.egg': 'a83c4020414807b496e4cfbe08507c03',

60 'setuptools-0.6c9-py2.4.egg': '260a2be2e5388d66bdaee06abec6342a',

61 'setuptools-0.6c9-py2.5.egg': 'fe67c3e5a17b12c0e7c541b7ea43a8e6',

62 'setuptools-0.6c9-py2.6.egg': 'ca37b1ff16fa2ede6e19383e7b59245a',

63 }

64

65 import sys, os

66 try: from hashlib import md5

67 except ImportError: from md5 import md5

68

69 def _validate_md5(egg_name, data):

70 if egg_name in md5_data:

71 digest = md5(data).hexdigest()

72 if digest != md5_data[egg_name]:

73 print >>sys.stderr, (

74 "md5 validation of %s failed! (Possible download problem?)"

75 % egg_name

76 )

77 sys.exit(2)

78 return data

79

80 def use_setuptools(

81 version=DEFAULT_VERSION, download_base=DEFAULT_URL, to_dir=os.curdir,

82 download_delay=15

83 ):

84 """Automatically find/download setuptools and make it available on sys.path

85

86 `version` should be a valid setuptools version number that is available

87 as an egg for download under the `download_base` URL (which should end with

88 a '/'). `to_dir` is the directory where setuptools will be downloaded, if

89 it is not already available. If `download_delay` is specified, it should

90 be the number of seconds that will be paused before initiating a download,

91 should one be required. If an older version of setuptools is installed,

92 this routine will print a message to ``sys.stderr`` and raise SystemExit in

93 an attempt to abort the calling script.

94 """

95 was_imported = 'pkg_resources' in sys.modules or 'setuptools' in sys.modules

96 def do_download():

97 egg = download_setuptools(version, download_base, to_dir, download_delay)

98 sys.path.insert(0, egg)

99 import setuptools; setuptools.bootstrap_install_from = egg

100 try:

101 import pkg_resources

102 except ImportError:

103 return do_download()

104 try:

105 pkg_resources.require("setuptools>="+version); return

106 except pkg_resources.VersionConflict, e:

107 if was_imported:

108 print >>sys.stderr, (

109 "The required version of setuptools (>=%s) is not available, and\n"

110 "can't be installed while this script is running. Please install\n"

111 " a more recent version first, using 'easy_install -U setuptools'."

112 "\n\n(Currently using %r)"

113 ) % (version, e.args[0])

114 sys.exit(2)

115 except pkg_resources.DistributionNotFound:

116 pass

117

118 del pkg_resources, sys.modules['pkg_resources'] # reload ok

119 return do_download()

120

121 def download_setuptools(

122 version=DEFAULT_VERSION, download_base=DEFAULT_URL, to_dir=os.curdir,

123 delay = 15

124 ):

125 """Download setuptools from a specified location and return its filename

126

127 `version` should be a valid setuptools version number that is available

128 as an egg for download under the `download_base` URL (which should end

129 with a '/'). `to_dir` is the directory where the egg will be downloaded.

130 `delay` is the number of seconds to pause before an actual download attempt.

131 """

132 import urllib2, shutil

133 egg_name = "setuptools-%s-py%s.egg" % (version,sys.version[:3])

134 url = download_base + egg_name

135 saveto = os.path.join(to_dir, egg_name)

136 src = dst = None

137 if not os.path.exists(saveto): # Avoid repeated downloads

138 try:

139 from distutils import log

140 if delay:

141 log.warn("""

142 ---------------------------------------------------------------------------

143 This script requires setuptools version %s to run (even to display

144 help). I will attempt to download it for you (from

145 %s), but

146 you may need to enable firewall access for this script first.

147 I will start the download in %d seconds.

148

149 (Note: if this machine does not have network access, please obtain the file

150

151 %s

152

153 and place it in this directory before rerunning this script.)

154 ---------------------------------------------------------------------------""",

155 version, download_base, delay, url

156 ); from time import sleep; sleep(delay)

157 log.warn("Downloading %s", url)

158 src = urllib2.urlopen(url)

159 # Read/write all in one block, so we don't create a corrupt file

160 # if the download is interrupted.

161 data = _validate_md5(egg_name, src.read())

162 dst = open(saveto,"wb"); dst.write(data)

163 finally:

164 if src: src.close()

165 if dst: dst.close()

166 return os.path.realpath(saveto)

167

168

169

170

171

172

173

174

175

176

177

178

179

180

181

182

183

184

185

186

187

188

189

190

191

192

193

194

195

196

197

198

199

200

201

202

203 def main(argv, version=DEFAULT_VERSION):

204 """Install or upgrade setuptools and EasyInstall"""

205 try:

206 import setuptools

207 except ImportError:

208 egg = None

209 try:

210 egg = download_setuptools(version, delay=0)

211 sys.path.insert(0,egg)

212 from setuptools.command.easy_install import main

213 return main(list(argv)+[egg]) # we're done here

214 finally:

215 if egg and os.path.exists(egg):

216 os.unlink(egg)

217 else:

218 if setuptools.__version__ == '0.0.1':

219 print >>sys.stderr, (

220 "You have an obsolete version of setuptools installed. Please\n"

221 "remove it from your system entirely before rerunning this script."

222 )

223 sys.exit(2)

224

225 req = "setuptools>="+version

226 import pkg_resources

227 try:

228 pkg_resources.require(req)

229 except pkg_resources.VersionConflict:

230 try:

231 from setuptools.command.easy_install import main

232 except ImportError:

233 from easy_install import main

234 main(list(argv)+[download_setuptools(delay=0)])

235 sys.exit(0) # try to force an exit

236 else:

237 if argv:

238 from setuptools.command.easy_install import main

239 main(argv)

240 else:

241 print "Setuptools version",version,"or greater has been installed."

242 print '(Run "ez_setup.py -U setuptools" to reinstall or upgrade.)'

243

244 def update_md5(filenames):

245 """Update our built-in md5 registry"""

246

247 import re

248

249 for name in filenames:

250 base = os.path.basename(name)

251 f = open(name,'rb')

252 md5_data[base] = md5(f.read()).hexdigest()

253 f.close()

254

255 data = [" %r: %r,\n" % it for it in md5_data.items()]

256 data.sort()

257 repl = "".join(data)

258

259 import inspect

260 srcfile = inspect.getsourcefile(sys.modules[__name__])

261 f = open(srcfile, 'rb'); src = f.read(); f.close()

262

263 match = re.search("\nmd5_data = {\n([^}]+)}", src)

264 if not match:

265 print >>sys.stderr, "Internal error!"

266 sys.exit(2)

267

268 src = src[:match.start(1)] + repl + src[match.end(1):]

269 f = open(srcfile,'w')

270 f.write(src)

271 f.close()

272

273

274 if __name__=='__main__':

275 if len(sys.argv)>2 and sys.argv[1]=='--md5update':

276 update_md5(sys.argv[2:])

277 else:

278 main(sys.argv[1:])

复制代码

    (1、)直接将上面这一代码复制出来,保存一下。文件名为ez_setup.py 记得扩展名是py。

    (2、)控制台中(cmd)直接输入 python ez_setup.py (网上直接的资料直接运行ez_setup.py 这样我没成功)

        最后结果:

D:\>ez_setup.py

Downloading http://pypi.python.org/packages/2.7/s/setuptools/setuptools-0.6c11-py2.7.egg

Processing setuptools-0.6c11-py2.7.egg

Copying setuptools-0.6c11-py2.7.egg to d:\python27\lib\site-packages

Adding setuptools 0.6c11 to easy-install.pth file

Installing easy_install-script.py script to D:\Python27\Scripts

Installing easy_install.exe script to D:\Python27\Scripts

Installing easy_install.exe.manifest script to D:\Python27\Scripts

Installing easy_install-2.7-script.py script to D:\Python27\Scripts

Installing easy_install-2.7.exe script to D:\Python27\Scripts

Installing easy_install-2.7.exe.manifest script to D:\Python27\Scripts

Installed d:\python27\lib\site-packages\setuptools-0.6c11-py2.7.egg

Processing dependencies for setuptools==0.6c11

Finished processing dependencies for setuptools==0.6c11

企业建站2800元起,携手武汉肥猫科技,做一个有见地的颜值派!更多优惠请戳:襄阳网站建设公司 https://www.jingchucn.com/zt/xiangyang_wangzhanjianshe/

  • 上一篇:php文件怎么打开 php是什么 php是什么意思 php是什么
  • 下一篇:最后一页
  •