模拟新浪微博登陆(直接调用cookie方法)

之前写过一篇 模拟登录新浪微博 ,是采用POST 用户名/密码等参数(经过加密)并保存Cookie来模拟登录的方法。
一般情况下,为了保证安全性,网站会定期更新登录的detail,例如修改参数名、更新加密(散列)算法等。所以模拟登录的代码定期肯定会失效,但是如果网站没有进行大的更新的话,稍微改一改还是能用的。另外,碰到验证码的情况就更难办了,虽然程序可以一定程度地识别验证码字符,但目前很难找到简单的可以通用的验证码识别程序。
很多豆友反馈有模拟登录新浪微博抓取数据的需求,其实对于一般的微博数据获取,如用户信息、微博内容等,使用微博开放平台API是更明智的选择:速度更快,而且节省许多网页处理的功夫。对于API没有开放的数据,我们再采用模拟登录的方法。

熟悉Web的朋友只要定期维护模拟登录的代码就可以一直成功登录微博。如果不那么熟悉的话,其实可以采用更naive的思路来解决:直接将Cookie发送给新浪微博以实现模拟登录。
1,获取Cookie
很简单,使用Chrome浏览器的”开发者工具(Developer Tools)“或者Firefox的"HTTPFOX"等插件就可以直接查看自己新浪微博的Cookie。(注: 这个私人Cookie千万不要泄露哦!)
2, 将Cookie作为访问微博的header参数提交
headers = {'cookie': 'your cookie'}
req = urllib2.Request(url, headers=headers) #每次访问页面都要提交headers
r = urllib2.urlopen(req)

具体代码见:http://whoop.sinaapp.com/download/weibo-login/


表示很蛋疼,以为只要登录了新浪微博,就可以获得微博列表了,结果返回的却是一个js块。。。还要继续研究啊。。。




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
您好!要使用 WebDriver 登录新浪微博,您可以按照以下步骤进行操作: 1. 首先,您需要下载相应浏览器的 WebDriver。根据您使用的浏览器类型,可以选择下载 ChromeDriver(Google Chrome 浏览器)、GeckoDriver(Mozilla Firefox 浏览器)或者其他对应的驱动程序。 2. 安装 WebDriver,并确保将其添加到系统的 PATH 环境变量中,以便可以在命令行或脚本中直接调用。 3. 导入相应的库,例如 Selenium WebDriver,以便在代码中使用。 4. 创建一个 WebDriver 的实例,指定浏览器类型和 WebDriver 的路径。例如,在 Python 中,您可以使用以下代码创建一个 Chrome WebDriver 的实例: ```python from selenium import webdriver driver = webdriver.Chrome('path_to_chromedriver') ``` 5. 使用 WebDriver 打开新浪微博登录页面。例如,在 Python 中,您可以使用以下代码打开登录页面: ```python driver.get('https://weibo.com') ``` 6. 找到登录表单的用户名和密码输入框,并使用 `send_keys()` 方法输入相应的用户名和密码。例如,在 Python 中,可以使用以下代码找到并填写用户名和密码: ```python username_input = driver.find_element_by_name('username') password_input = driver.find_element_by_name('password') username_input.send_keys('your_username') password_input.send_keys('your_password') ``` 7. 找到登录按钮,并使用 `click()` 方法点击登录。例如,在 Python 中,可以使用以下代码找到并点击登录按钮: ```python login_button = driver.find_element_by_xpath('//button[contains(text(), "登录")]') login_button.click() ``` 8. 等待页面加载完成,可以使用 `time.sleep()` 方法暂停一段时间,或者使用 WebDriver 的等待机制来等待特定的元素出现。 9. 登录完成后,您可以执行其他操作,例如访问其他页面或执行特定的操作。 请注意,这只是一个简单的示例,并且具体的代码实现可能因不同的编程语言和环境而有所不同。您可能需要根据自己的实际情况和需求进行适当的调整。 希望对您有所帮助!如有任何问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值