from selenium import webdriver
import time
import re
import randombrowser=webdriver.Firefox()
browser.get("http://3g.kaixin001.com/")
browser.find_element_by_id("username").send_keys("登陆账号")
browser.find_element_by_id("password").send_keys("密码")
browser.find_element_by_name("login").click()#输入账号密码,点击登录按钮登录
browser.find_element_by_class_name("name").click()
time.sleep(random.randint(2,8))
browser.find_element_by_link_text("我的照片(37)").click()  #照片相册名字
time.sleep(random.randint(2,8))
browser.find_element_by_class_name("pic_container").click()#默认使用class name定位仅可以定位带第一个照片专辑,使用xpath或link txt定位可定位其他照片专辑
time.sleep(random.randint(2,8))
browser.find_element_by_xpath("/html/body/div[7]/a[1]").click()
html=browser.page_source
yeshu=browser.find_element_by_class_name("c9").text#确定当前专辑有几张照片,为下面的循环做准备
yeshu2=int(yeshu[3:5])
f=open("123.txt","a+")
if yeshu2>0:for i in range(0,yeshu2):#确定照片张数之后循环指定次数,获取图片地址,依次下一张i-=1html1=browser.page_sourcehtmlimg=re.findall("下载中(.*)下载原图",html1,re.S)strli="".join(htmlimg)       #列表转换为字符串print(strli)f.write(strli)time.sleep(random.randint(2,8))browser.find_element_by_link_text("下一张").click()
f.close()

python调用selenium实现登陆开心网,下载指定专辑内的照片。整个过程调用火狐浏览器实现,可看到每一步的操作步骤。过程中遇到一些问题总结如下:

1.selenium定位元素时有时使用常规的id,name,class name,等方式都无法定位时,可以考虑使用xpath实现定位。比如某些元素属性都一致的时候。或者使用link txt定位

2.random模块可以实现随机数功能,简单好用,很强大。

3.strli="".join(htmlimg)    列表转换为字符串,列表之间的内容用“”之间的内容进行连接。对应的是aplit,用法如下

split(…)
S.split([sep [,maxsplit]]) -> 由字符串分割成的列表
返回一组使用分隔符(sep)分割字符串形成的列表。如果指定最大分割数,则在最大分割时结束。如果分隔符未指定或者为none,则分隔符默认为空格。

转载于:https://www.cnblogs.com/yefengpython/p/5359361.html

python 登陆开心网图片批量下载-selenium实现相关推荐

  1. linux 批量下载图片,Python + Excel 实现图片批量下载

    操作环境 操作系统:Windows 10 家庭版 64 位 Python 版本:Python 3.7.0 操作步骤 首先,我们有下面这样一个 Excel 表格,其中第三列是图片的 URL 地址: 图 ...

  2. Python + Excel 实现图片批量下载

    本文由荒原之梦原创,原文链接:http://zhaokaifeng.com/?p=1214 操作环境 操作系统:Windows 10 家庭版 64 位 Python 版本:Python 3.7.0 操 ...

  3. 2021-03-10 Python多线程爬虫快速批量下载图片

    Python多线程爬虫快速批量下载图片 1.完成这个需要导入的模块 urllib,random,queue(队列),threading,time,os,json 第三方模块的安装 键盘win+R,输入 ...

  4. Python爬虫——利用Scrapy批量下载图片

    Python爬虫--利用Scrapy批量下载图片 Scrapy下载图片项目介绍 使用Scrapy下载图片 项目创建 项目预览 创建爬虫文件 项目组件介绍 Scrapy爬虫流程介绍 页面结构分析 定义I ...

  5. 【pyhon】nvshens图片批量下载爬虫1.01

    # nvshens图片批量下载爬虫1.01 # 原先版本在遇到网络故障时回下载不全,这回更改了模式使得下载不成就重新下载,直到全部下载完毕 from bs4 import BeautifulSoup ...

  6. Node.js aitaotu图片批量下载Node.js爬虫1.00版

    即使是https网页,解析的方式也不是一致的,需要多试试. 代码: //====================================================== // aitaot ...

  7. 笨笨图片批量下载器 V0.3 beta[C# | WinForm | 正则表达式 | HttpWebRequest | Async异步编程] new...

    前言 从[笨笨图片批量抓取下载 V0.2 beta]到[笨笨图片批量下载器 V0.3 beta]时间将近2个月,不是说这个升级版本开发了这么久,实在是懒,呵呵: )再加有时候工作忙.学习,多的时间就不 ...

  8. Node.js umei图片批量下载Node.js爬虫1.00

    这个爬虫在abaike爬虫的基础上改改图片路径和下一页路径就出来了,代码如下: //====================================================== // ...

  9. Node.js mimimn图片批量下载爬虫 1.00

    这个爬虫在Referer设置上和其它爬虫相比有特殊性.代码: //====================================================== // mimimn图片批 ...

最新文章

  1. Linux下创建与解压zip, tar, tar.gz和tar.bz2文件及该文件压缩对比
  2. python unix时间戳转换成时间_关于python:将unix时间戳字符串转换为可读日期
  3. 0115互联网新闻 | 王欣发布“马桶MT”;字节跳动发布“多闪”;罗永浩新社交软件“聊天宝”已上架苹果App Store...
  4. 备份mysql数据库的思路
  5. 初级Java开发与架构之间的差距不仅仅是开发时间
  6. 九章算法强化班 - 课程大纲
  7. linux内核安装教程,Linux内核5.9的最重要功能及安装方法
  8. oracle 触发器 insert 前检查_一文看懂INSTEAD OF 与AFTER 触发器区别与联系
  9. python 六剑客(匿名函数和内建函数)
  10. python手机版教程视频_Python教学app下载
  11. 【转】姚班学霸陈立杰
  12. 抢滩新零售混战 实力战将才不惧双十一 附:双十一红包雨时间表
  13. logback打印出mybatis sql日志(转载)
  14. Python数据处理之数据聚合
  15. Android中的Drawable(一)
  16. 约翰霍普金斯大学计算机博士收入,约翰霍普金斯大学计算机科学研究生项目详情!...
  17. 人和计算机比赛下棋结果,人机大战趣谈:会下棋的电脑 像人一样聪明
  18. 离散数学_九章:关系(2)
  19. 出生日期算年龄html,Javascript从出生日期算起的年龄
  20. “孔乙己的长衫”:学历究竟成为敲门砖还是枷锁

热门文章

  1. 常用汉字的unicode编码
  2. 降Mail十八章(上)
  3. jQuery判断获得的对象是否存在的方法
  4. SOA改变的企业软件生态
  5. java等待欢迎界面_android welcome欢迎界面3秒后自动跳转
  6. 如何在Zynq-7000上烧写PL Image
  7. 模拟电路推荐学习书单
  8. 利用人脑神经突触进行网络模型剪枝
  9. Python不用理解进程,线程实现多任务就是这么简单
  10. BZOJ-1257-[CQOI2007]余数之和sum