python 模拟用户点击浏览器_Python模拟浏览器实现用户响应

1 '''

2 command:3

4 python KillJobs.py -url=172.20.9.42:1100 -screenShotPath=*****5

6 '''

7

8 from selenium importwebdriver9 from selenium.common.exceptions importNoSuchElementException10 from selenium.webdriver.common.keys importKeys11 importre12 importtime13 importargparse14 importsys15 importos16

17

18 mailReceiver =[19 "xxxxxxxxxxxxxxxx@xx"

20 ]21

22 ZOMBIE_JOB_LIST = {"list1": [], "list2": [], "list3":[]}23

24 defget_mail_receiver():25 receiver = ' '

26 for recv inmailReceiver:27 receiver = receiver + recv + ' '

28

29 returnreceiver30

31 defkill_zombie_jobs(screenShotPath, url):32 browser = webdriver.PhantomJS() #Get local session of PhantomJS

33 #browser = webdriver.Firefox() # Get local session of Firefox

34 browser.set_window_size(2500, 2000)35

36 targetUrl = "http://%s/#JOBS" %url37 print "url:", targetUrl38

39 job_to_be_kill_indicate =040

41 browser.get(targetUrl) #Load page

42 userName = browser.find_elements_by_class_name("gwt-TextBox")43 password = browser.find_elements_by_class_name("gwt-PasswordTextBox")44 submitButton = browser.find_elements_by_class_name("gwt-Button")45

46 if len(userName) == 0 or len(password) == 0 or len(submitButton) ==0:47 print "error in open url: %s" %targetUrl48 browser.quit()49 return

50

51 userName[0].send_keys("root")52 password[0].send_keys("changeit")53 time.sleep(1)54 submitButton[0].click()55

56 time.sleep(2)57

58 sceen_shot_name = screenShotPath + "/Before_kill_jobs_screen_shot.png"

59 browser.save_screenshot(sceen_shot_name)60

61 jobs_name_pattern_0 = "//body/div[2]/div[2]/div/div[4]/div/div[3]/div/div[4]/div/div[2]/div/div[2]/div/div/div/div[3]/table[2]/tbody/tr[1]/td/fieldset/table/tbody/tr/td/table/tbody/tr/td/table/tbody/tr/td[1]"

62 jobs_name_pattern = "//body/div[2]/div[2]/div/div[4]/div/div[3]/div/div[4]/div/div[2]/div/div[2]/div/div/div/div[3]/table[2]/tbody/tr[1]/td/fieldset/table/tbody/tr/td/table/tbody/tr/td/table/tbody/tr[Order]/td[1]"

63 jobs_duration_pattern = "//body/div[2]/div[2]/div/div[4]/div/div[3]/div/div[4]/div/div[2]/div/div[2]/div/div/div/div[3]/table[2]/tbody/tr[1]/td/fieldset/table/tbody/tr/td/table/tbody/tr/td/table/tbody/tr[Order]/td[5]"

64

65 for i in range(1, 4):66 tmp_list = "list"+str(i)67 job_name_elements_list =browser.find_elements_by_xpath(jobs_name_pattern_0)68 job_length =len(job_name_elements_list)69

70 for index in range(1, job_length+1):71 job_name_pattern = jobs_name_pattern.replace("Order", str(index))72 job_duration_pattern = jobs_duration_pattern.replace("Order", str(index))73 job_name =get_element_name(browser, job_name_pattern)74 job_duration_time =get_duration_time(get_element_name(browser, job_duration_pattern))75

76 if len(job_name) > 10 and job_duration_time ==0:77 ZOMBIE_JOB_LIST[tmp_list].append(job_name)78 time.sleep(60)79

80 zombie_job_list =get_zombie_job_list(ZOMBIE_JOB_LIST)81 print "\n ---------To be killed job list:", zombie_job_list82 len1 =len(zombie_job_list)83 print "\n ---------To be killed job list length:", len184 kill_jobs_in_list(browser, zombie_job_list)85 print "\n ---------After killed job list:", zombie_job_list86 len2 =len(zombie_job_list)87 print "\n ---------After killed job list length:", len288

89 time.sleep(2)90 sceen_shot_name = screenShotPath + "/After_kill_jobs_screen_shot.png"

91 browser.save_screenshot(sceen_shot_name)92 browser.quit()93

94 if len2

<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值