专栏首页萌海无涯基于selenium写微博爬虫(待续)

基于selenium写微博爬虫(待续)

‍太热,热的写不动了。。

导入需要用到的包

from selenium import webdriverimport time

设置好浏览器模式,使用手机模式访问

# 手机浏览器的型号mobileEmulation = {"deviceName":"iPhone X"}
# 初始化options = webdriver.ChromeOptions()options.add_experimental_option('mobileEmulation', mobileEmulation)driver = webdriver.Chrome(chrome_options=options)

进行登录操作

不是上来就需要登录,貌似有些不登录不能操作,我们提前登录

验证码是滑块,这个搞不来搞不来,加个延时手动跳过吧。

# 请求URLdriver.get("https://m.weibo.cn/")
# 点击登录driver.find_element_by_class_name("lite-sign-in").click()
# 点击账号密码登录driver.find_element_by_class_name("b-left").click()
# 账号driver.find_element_by_id("loginName").send_keys("用户名")
# 输入密码driver.find_element_by_id("loginPassword").send_keys("密码")# 点击登录driver.find_element_by_id("loginAction").click()# 自己手动跳过,延时5秒time.sleep(5)# 验证码# driver.find_element_by_class_name("geetest_radar_tip").click()

判断登录后的跳转URl是否是登录成功的url

if driver.current_url == 'https://m.weibo.cn/?sudaref=security.weibo.com':    print("登录成功")

手机微博,是往下滑动翻页,我们用js代码来实现

# 翻页操作js="var q=document.documentElement.scrollTop=100000"driver.execute_script(js)time.sleep(3)
from selenium import webdriverimport time
# 手机浏览器的型号mobileEmulation = {"deviceName":"iPhone X"}
# 初始化options = webdriver.ChromeOptions()options.add_experimental_option('mobileEmulation', mobileEmulation)driver = webdriver.Chrome(chrome_options=options)

# 请求URLdriver.get("https://m.weibo.cn/")
# 点击登录driver.find_element_by_class_name("lite-sign-in").click()
# 点击账号密码登录driver.find_element_by_class_name("b-left").click()
# 账号driver.find_element_by_id("loginName").send_keys("用户名")
# 输入密码driver.find_element_by_id("loginPassword").send_keys("密码")# 点击登录driver.find_element_by_id("loginAction").click()time.sleep(5)# 验证码# driver.find_element_by_class_name("geetest_radar_tip").click()
# 块# driver.find_element_by_class_name("geetest_slider_button")
# 登录后地址if driver.current_url == 'https://m.weibo.cn/?sudaref=security.weibo.com':    print("登录成功")
# 点击搞笑
driver.find_element_by_xpath('//*[@id="app"]/div[1]/div[1]/div[2]/div/div[1]/div/div/ul/li[5]').click()

# 翻页操作js="var q=document.documentElement.scrollTop=100000"driver.execute_script(js)time.sleep(3)

本文分享自微信公众号 - 萌海无涯(mhwyhtwa),作者:萌海无涯

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-07-29

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • python中socket的tcp学习(1)

    大多数连接都是可靠的TCP连接。创建TCP连接时,主动发起连接的叫客户端,被动响应连接的叫服务器。

    萌海无涯
  • 微软Chromium版Edge浏览器

    微软Chromium版Edge浏览器的外观更像是当前 Windows 10 上 的 Edge 和 Chrome 的结合体。安装Chromium版本的Edge之后...

    萌海无涯
  • windows 里直接读取 mac 系统里的文件

    全新的苹果文件格式系统 APFS ,应用在macOS,iOS,和 其他硬件上。如果你在 Windows 电脑里想读取这个分区格式,无论存储介质是在 机械硬盘,固...

    萌海无涯
  • appium中ios元素定位

    appium中,IOS和Android元素定位方法有些不同。 查找元素的顺序,个人认为速度从快到慢的顺序是这样的: ios_predicate >> acces...

    赵云龙龙
  • ParallelX在GPU上运行Hadoop任务

    在面对大规模计算密集型算法时,MapReduce范式的表现并不总是很理想。为了解决其瓶颈,一支小型创业团队构建了名为ParallelX的产品——它将通过利用GP...

    GPUS Lady
  • 看懂云计算、虚拟化和容器,这一篇就够啦!

    作为信息科技发展的主流趋势,它频繁地出现在我们的眼前。伴随它一起出现的,还有这些概念名词——OpenStack、Hypervisor、KVM、Docker、K8...

    鲜枣课堂
  • ASP.NET MVC Controller激活系统详解:默认实现

    Controller激活系统最终通过注册的ControllerFactory创建相应的Conroller对象,如果没有对ControllerFactory类型或...

    蒋金楠
  • 云计算到底是怎么玩的?

    作为IT行业的热门技术,它频繁出现在各大媒体的新闻报道中。BAT这样的互联网企业,也经常把它挂在嘴边。

    鲜枣课堂
  • 一个有趣的内存泄漏案例

    之前在这篇文章里说过做了个 SSR 《论如何像素级直出具有14W行代码量的前端页面》,本以为今天顺顺利利,高高兴兴。

    五月君
  • 云计算到底是怎么玩的?

    作为IT行业的热门技术,它频繁出现在各大媒体的新闻报道中。BAT这样的互联网企业,也经常把它挂在嘴边。

    用户6543014

扫码关注云+社区

领取腾讯云代金券