实战大项目:模拟登录丁香园,并抓取论坛页面所有的人员基本信息与回复帖子内容----登录第一步

哎呀呀,先一步一步的来吧,我们知道要先登录才能查看全部的信息。好吧先去注册,记住账号和密码。
实战大项目:模拟登录丁香园,并抓取论坛页面所有的人员基本信息与回复帖子内容----登录第一步
2、注册好了之后,先解决登录问题,可以看到有两个登录的地方,编号1、2.
打开网页,f12,先看看登录节点在哪里
实战大项目:模拟登录丁香园,并抓取论坛页面所有的人员基本信息与回复帖子内容----登录第一步
实战大项目:模拟登录丁香园,并抓取论坛页面所有的人员基本信息与回复帖子内容----登录第一步
看看第一个登录节点,登录节点和注册节点,名称一样的,但是登录在注册之前,第二个登录在注册之后。在定位节点的时候,1号的登录节点比较好找。因此查看属性,用xpath定位。

import time
from selenium import webdriver
browser  =  webdriver.Firefox()
# 先模拟登录
url = 'http://www.dxy.cn/bbs/thread/626626#626626/'   #丁香医生
browser.get(url)
time.sleep(3)
browser.maximize_window()#打开网页窗口
time.sleep(4)
denglu = browser.find_element_by_xpath('//div[@class="nav_account"]/a')  #找到第一个a节点
denglu.click()  #点击进入到登录网站
time.sleep(2)
dl = browser.find_element_by_xpath('//a/i[@class="wechat__ico ico_pc"]')  
dl.click()#这里进入电脑版登录界面
time.sleep(2)     

实战大项目:模拟登录丁香园,并抓取论坛页面所有的人员基本信息与回复帖子内容----登录第一步
3、模拟登录,准备好账号和密码

实战大项目:模拟登录丁香园,并抓取论坛页面所有的人员基本信息与回复帖子内容----登录第一步
找到节点。打开f12,点击那个左上方那个箭头,在把鼠标移到“手机账号邮箱登录位置”点击一下,网页就会自动定位到 那个代码位置。我们看到属性为“username”。
同样的方法找到其他节点。

input= browser.find_element_by_name("username")  #找到账号输入的地方
input.send_keys("17353239795")
password = browser.find_element_by_name("password")#密码输入框
password.send_keys('wq1255462268')
login_em = browser.find_element_by_class_name("button")#登录按钮
login_em.click()
time.sleep(4)

到这里需要验证码 ,