<code id="ebytu"><sup id="ebytu"><track id="ebytu"></track></sup></code>
    <td id="ebytu"><option id="ebytu"></option></td>
    <pre id="ebytu"><label id="ebytu"><menu id="ebytu"></menu></label></pre>
    <acronym id="ebytu"><label id="ebytu"><xmp id="ebytu"></xmp></label></acronym>
  1. <td id="ebytu"></td>

    <track id="ebytu"><ruby id="ebytu"></ruby></track>

            在python中使用selenium庫實現網頁模擬點擊

            發表于:2022-12-07 09:29

            字體: | 上一篇 | 下一篇 | 我要投稿

             作者:シバ鳥    來源:博客園

              為什么想要實現模擬點擊
              最近我的一個同學找我想讓我幫他做一個腳本,就是模擬在網頁中購買iphone14pro的腳本,然后他給我發了一條連接,我看了一下,興趣就上來了,于是也就做了這樣一個小項目。廢話也不多說,直接上代碼,至于關于selenium庫的一些相關知識內容,我會在隨筆最后附上鏈接。
              代碼部分
              from selenium import webdriver
              from selenium.webdriver.firefox.service import Service
              from selenium.webdriver.common.by import By
              import time
              class autopurchase(webdriver.Firefox):
                  def __init__(self):
                      super(autopurchase, self).__init__()
                      self.openweb()
                      self.auto_click_purchase()
                      self.type_select()
                      self.purchase()
                  # 打開網址
                  def openweb(self):
                      self.s = Service('D:\\autopurchase\\geckodriver.exe')
                      self.driver = webdriver.Firefox(service=self.s)
                      self.url = u'https://www.apple.com.cn/iphone-14-pro'
                      self.driver.get(self.url)
                      self.implicitly_wait(10)
                      time.sleep(1)
                  # 模擬點擊購買
                  def auto_click_purchase(self):
                      self.click_purchase = self.driver.find_element(By.XPATH,value='/html/body/nav[2]/div/div[2]/div[2]/div[2]/div[2]/a')
                      self.driver.implicitly_wait(10)
                      self.click_purchase.click()
                  # 跳轉到‘https://www.apple.com.cn/shop/buy-iphone/iphone-14-pro’頁面
                  # 選擇類型
                  def type_select(self):
                      # 選擇pro類型
                      self.driver.implicitly_wait(10)
                      self.elem_pro = self.driver.find_element(By.XPATH,value='/html/body/div[2]/div[4]/div[4]/div[3]/div[2]/div[2]/div/div[1]/div[1]/div[2]')
                      self.elem_pro.click()
                      # 選擇顏色
                      self.driver.implicitly_wait(10)
                      self.color = self.driver.find_element(By.XPATH,value='/html/body/div[2]/div[4]/div[4]/div[3]/div[2]/div[2]/div/div[2]/div/ul/li[4]')
                      self.color.click()
                      # 選擇內存
                      self.driver.implicitly_wait(10)
                      self.memory = self.driver.find_element(By.XPATH,value='/html/body/div[2]/div[4]/div[4]/div[3]/div[2]/div[2]/div/div[3]/div[1]/div[2]')
                      self.memory.click()
                      # 選擇是否需要折扣
                      self.driver.implicitly_wait(10)
                      self.choose_if_discount = self.driver.find_element(By.XPATH,value='/html/body/div[2]/div[4]/div[4]/div[3]/div[3]/div[1]/div[2]/div[1]/div/div/div/div[2]')
                      self.choose_if_discount.click()
                      # 選擇是否需要加入applecare計劃
                      self.driver.implicitly_wait(10)
                      self.choose_if_applecare = self.driver.find_element(By.XPATH,value='/html/body/div[2]/div[4]/div[4]/div[3]/div[3]/div[3]/div/div/div[1]/div[1]/fieldset/div/div/div[2]')
                      self.choose_if_applecare.click()
                  # 購買流程
                  def purchase(self):
                      self.driver.implicitly_wait(10)
                      self.add_item = self.driver.find_element(By.NAME,value='add-to-cart')
                      self.add_item.click()
                      self.driver.implicitly_wait(10)
                      self.element_check = self.driver.find_element(By.XPATH,value='/html/body/div[2]/div[4]/div[2]/div/div/div/div[2]/div/form/button')
                      self.element_check.click()
                      self.driver.implicitly_wait(10)
                      self.paymentbtn = self.driver.find_element(By.ID, value='shoppingCart.actions.navCheckout')
                      self.paymentbtn.click()
                      # 以游客模式
                      self.driver.implicitly_wait(10)
                      self.guest = self.driver.find_element(By.ID, value='signIn.guestLogin.guestLogin')
                      self.guest.click()
              if __name__ == '__main__':
                  autopurchase()
              關于這個程序
              程序中的代碼在學習selenium庫的具體用法后是可以自己修改并且使用的,代碼相關的注釋也很清楚,所以并不需要過分清楚的解釋。這個程序的代碼部分我只寫到了從點擊購買到結賬的位置,相當于是一個簡單的購買iphone14pro的一個代碼模板,如果有興趣的話可以在這上面進行相關的調試和修改。至于想要實現這種模擬點擊需要學習的相關知識有python的一些基本語句使用,類的相關使用,selenium庫,網頁的一些相關知識,所以想要弄明白這個程序的話,就得把我說的這些點學會。
              本文內容不用于商業目的,如涉及知識產權問題,請權利人聯系51Testing小編(021-64471599-8017),我們將立即處理
            價值398元的測試課程免費贈送,填問卷領取吧!

            關注51Testing

            聯系我們

            快捷面板 站點地圖 聯系我們 廣告服務 關于我們 站長統計

            法律顧問:上海漕溪律師事務所 項棋律師
            版權所有 上海博為峰軟件技術股份有限公司 Copyright©51testing.com 2003-2022
            投訴及意見反饋:webmaster@51testing.com; 業務聯系:service@51testing.com 021-64471599-8017

            滬ICP備05003035號

            滬公網安備 31010102002173號

            亚洲春色校园小说_欧洲精品色在线观看视频_国产思思99RE99在线观看_天天躁日日躁狠狠躁日日躁

            <code id="ebytu"><sup id="ebytu"><track id="ebytu"></track></sup></code>
              <td id="ebytu"><option id="ebytu"></option></td>
              <pre id="ebytu"><label id="ebytu"><menu id="ebytu"></menu></label></pre>
              <acronym id="ebytu"><label id="ebytu"><xmp id="ebytu"></xmp></label></acronym>
            1. <td id="ebytu"></td>

              <track id="ebytu"><ruby id="ebytu"></ruby></track>