CSDN登录
coding = utf-8
‘’’
利用spliter登录CSDN,并进入’写文章-CSDN博客’界面
话不多说,直接上码
‘’’
from splinter.browser import Browser
import time
import traceback
import requests
#根据url获取页面,并将页面写入D:\download\目录下
def get_page(url,file_name):
page = requests.get(url)
path = r'D:\download\{}'.format(file_name)
file = open(path, 'w+', encoding='utf-8')
file.write(page.text)
file.close()
#登录CSDN,并判断是否登录成功
def csdn_login(login_url,username,passwd):
browser = Browser(driver_name='chrome')
browser.visit(login_url)
#利用url直接进入的时候扫二维码登录,需要点击账户登录按钮进入用户名、密码登录方式
browser.find_by_xpath('//*[@id="app"]/div/div/div/div[2]/div[2]/ul/li[1]/a').click()
print(browser.title)
browser.fill('all',username)
browser.fill('pwd',passwd)
browser.find_by_text('登录').click()
print('已成功登录CSDN')
print('查询------------------------------------------------')
browser.find_by_id('toolber-keyword').fill('python')
#此处打算进行查询,但未成功..........................................
# button = browser.find_by_id('toolber-keyword')
# button.click()
#进入写博客界面
browser.find_by_xpath('//*[@id="csdn-toolbar"]/div/div/ul/li[3]/a/span').click()
print('成功点击‘写博客’按钮')
print('len(browser.windows):',len(browser.windows))
#利用windows操作,打印所有窗口title,url
for win in browser.windows:
print(win.title)
print(win.url)
print('len(browser.windows):',len(browser.windows))
print('browser.windows.current:',browser.windows.current)
browser.windows.current = browser.windows[1]
print('browser.url: ', browser.url)
print('browser.title:', browser.title)
t=1000
print('sleep {}s...................................................................'.format(t))
time.sleep(t)
browser.quit()
def main():
#CSDN登录url
login_url = 'https://passport.csdn.net/login'
#CSDN登录成功后的url
login_succ_url = 'https://www.csdn.net/'
#CSDN登录用户名密码
username = 'xxxx'
passwd = 'xxxx'
#记录页面
#get_page(login_url,'CSDN-login.html')
#get_page(login_succ_url,'CSDN-login-succ.html')
csdn_login(login_url=login_url,username=username,passwd=passwd)
if __name__ == '__main__':
main()