{"id":597,"date":"2022-05-26T18:08:59","date_gmt":"2022-05-26T10:08:59","guid":{"rendered":"https:\/\/usei.cn\/?p=597"},"modified":"2022-05-28T17:52:28","modified_gmt":"2022-05-28T09:52:28","slug":"selenium-%e5%b8%b8%e7%94%a8%e6%96%b9%e6%b3%95","status":"publish","type":"post","link":"https:\/\/usei.cn\/index.php\/2022\/05\/26\/selenium-%e5%b8%b8%e7%94%a8%e6%96%b9%e6%b3%95\/","title":{"rendered":"selenium \u5e38\u7528\u65b9\u6cd5"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">\u9a71\u52a8\u7684\u5e38\u7528\u65b9\u6cd5<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td>driver\u65b9\u6cd5<\/td><td>\u4f5c\u7528<\/td><\/tr><tr><td>.name<\/td><td>\u68c0\u67e5\u9a71\u52a8\u662f\u57fa\u4e8e\u4ec0\u4e48\u6d4f\u89c8\u5668(\u5047\u8bbe\u4e3a.Firefox(),\u8fd4\u56de\u503c\u5219\u4e3afirefox)<\/td><\/tr><tr><td>.get(\u7f51\u5740)<\/td><td>\u5df2get\u65b9\u6cd5\u6253\u5f00\u6307\u5b9a\u7f51\u5740<\/td><\/tr><tr><td>.title<\/td><td>\u8fd4\u56de\u5f53\u524d\u9875\u9762\u6807\u9898<\/td><\/tr><tr><td>.current_url<\/td><td>\u5f53\u524durl<\/td><\/tr><tr><td>.page_source<\/td><td>\u83b7\u53d6\u5f53\u524d\u9875\u9762\u7684\u6e90(\u91cd\u8981\u65b9\u6cd5)<\/td><\/tr><tr><td>.back()<\/td><td>\u5728\u6d4f\u89c8\u5668\u7684\u5386\u53f2\u8bb0\u5f55\u4e2d\u540e\u817f\u4e00\u6b65\u3002<\/td><\/tr><tr><td>.forward()<\/td><td>\u5728\u6d4f\u89c8\u5668\u5386\u53f2\u8bb0\u5f55\u4e2d\u5411\u524d\u8fc8\u8fdb\u4e86\u4e00\u6b65\u3002<\/td><\/tr><tr><td>.refresh()<\/td><td>\u5237\u65b0\u9875\u9762<\/td><\/tr><tr><td>.implicitly_wait(\u65f6\u95f4)<\/td><td>\u9690\u5f0f\u7b49\u5f85(\u4e0b\u65b9\u6709\u6b64\u65b9\u6cd5\u8be6\u7ec6\u4f7f\u7528\u8bf4\u660e)<\/td><\/tr><tr><td>.set_script_timeout(\u65f6\u95f4)<\/td><td>\u5f02\u6b65\u52a0\u8f7d\u9875\u9762\u65f6\u7b49\u5f85\u7684\u65f6\u95f4<\/td><\/tr><tr><td>.set_page_load_timeout(\u65f6\u95f4)<\/td><td>\u8bbe\u7f6e\u7b49\u5f85\u9875\u9762\u52a0\u8f7d\u7684\u65f6\u95f4,\u8d85\u51fa\u540e\u62a5\u9519(\u5728get\u524d\u4f7f\u7528)<\/td><\/tr><tr><td>.desired_capabilities<\/td><td>\u8fd4\u56de\u5f53\u524d\u9a71\u52a8\u7684\u4fe1\u606f<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">\u5bf9\u6d4f\u89c8\u5668\u7684\u64cd\u4f5c<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td>\u4f7f\u7528\u65b9\u6cd5<\/td><td>\u4f5c\u7528<\/td><\/tr><tr><td>.current_window_handle<\/td><td>\u8fd4\u56de\u5f53\u524d\u7a97\u53e3\u7684\u53e5\u67c4(\u7cfb\u7edf\u4f1a\u7ed9\u6bcf\u4e2a\u7a97\u53e3\u5206\u914d\u4e00\u4e2a\u53e5\u67c4,\u53ef\u4ee5\u6839\u636e\u53e5\u67c4\u79fb\u52a8\u7a97\u53e3\u3001\u6539\u53d8\u7a97\u53e3\u5927\u5c0f\u3001\u628a\u7a97\u53e3\u6700\u5c0f\u5316\u7b49\u7b49\u3002)<\/td><\/tr><tr><td>.window_handles<\/td><td>\u8fd4\u56de\u6240\u4ee5\u7a97\u53e3\u7684\u53e5\u67c4<\/td><\/tr><tr><td>.maximize_window()<\/td><td>\u6700\u5927\u5316\u7a97\u53e3<\/td><\/tr><tr><td>.minimize_window()<\/td><td>\u6700\u5c0f\u5316\u7a97\u53e3<\/td><\/tr><tr><td>.fullscreen_window()<\/td><td>\u5c06\u7a97\u53e3\u5168\u5c4f<\/td><\/tr><tr><td>.set_window_size(\u5bbd,\u9ad8)<\/td><td>\u6307\u5b9a\u7a97\u53e3\u7684\u5927\u5c0f<\/td><\/tr><tr><td>.get_window_size()<\/td><td>\u83b7\u53d6\u7a97\u53e3\u7684\u5927\u5c0f<\/td><\/tr><tr><td>,set_window_position(x,y)<\/td><td>\u8bbe\u7f6e\u7a97\u53e3\u7684\u4f4d\u7f6e<\/td><\/tr><tr><td>.get_window_position()<\/td><td>\u83b7\u53d6\u7a97\u53e3\u7684\u4f4d\u7f6e<\/td><\/tr><tr><td>.set_window_rect(x,y,\u5bbd,\u9ad8)<\/td><td>\u8bbe\u7f6e\u72b6\u51b5\u7684\u4f4d\u7f6e\u4ee5\u53ca\u5927\u5c0f<\/td><\/tr><tr><td>.get_window_rect()<\/td><td>\u83b7\u53d6\u5f53\u524d\u7a97\u53e3\u7684\u4f4d\u7f6e\u4ee5\u53ca\u5927\u5c0f<\/td><\/tr><tr><td>.close()<\/td><td>\u5173\u95ed\u7a97\u53e3<\/td><\/tr><tr><td>.quit()<\/td><td>\u9000\u51fa\u9a71\u52a8\u7a0b\u5e8f\u5e76\u5173\u95ed\u7a97\u53e3<\/td><\/tr><tr><td>.switch_to<\/td><td>\u7528\u4e8e\u5207\u6362\u7126\u70b9(\u591a\u7a97\u53e3\u5207\u6362\u4e0e\u5207\u6362\u5230\u9875\u9762\u4e2d\u5185\u7f6e\u9875\u9762frame\u5143\u7d20\u4e2d\u4f7f\u7528)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">\u67e5\u627e\u5143\u7d20<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td>\u5e38\u7528\u67e5\u627e\u65b9\u6cd5<\/td><td>\u4f5c\u7528<\/td><\/tr><tr><td>.find_element_by_id(id\u540d)<\/td><td>\u6309id\u67e5\u627e\u5143\u7d20\u3002(\u627e\u5230\u7b2c\u4e00\u4e2a\u7b26\u53f7\u8981\u6c42\u7684\u5143\u7d20\u540e\u7acb\u5373\u8fd4\u56de)<\/td><\/tr><tr><td>.find_elements_by_id(id\u540d)<\/td><td>\u6309id\u67e5\u627e\u591a\u4e2a\u5143\u7d20\u3002(\u627e\u5230\u591a\u4e2a\u7b26\u5408\u8981\u6c42\u7684\u5143\u7d20\u540e\u5408\u5e76\u6210\u5217\u8868\u8fd4\u56de)<\/td><\/tr><tr><td>.find_element_by_class_name(class\u540d)<\/td><td>\u6309class\u540d\u67e5\u627e\u5143\u7d20\u3002(\u540c\u6837\u62e5\u6709\u67e5\u627e\u591a\u4e2a\u5143\u7d20\u7684elements\u65b9\u6cd5)<\/td><\/tr><tr><td>.find_element_by_xpath(xpath\u89c4\u5219)<\/td><td>\u6309xpath\u89c4\u5219\u67e5\u627e\u5143\u7d20\u3002(\u540c\u6837\u62e5\u6709\u67e5\u627e\u591a\u4e2a\u5143\u7d20\u7684elements\u65b9\u6cd5)<\/td><\/tr><tr><td>.find_element_by_link_text(\u6587\u672c)<\/td><td>\u6839\u636e\u6807\u7b7e\u4e2d\u7684\u6587\u672c\u67e5\u627e\u5143\u7d20,\u5fc5\u987b\u8981\u5168\u6587\u5339\u914d,\u6bd4\u5982&lt;p&gt;\u5168\u6587\u5339\u914d&lt;\/p&gt;\u65f6\u6587\u672c\u5fc5\u987b\u4e3a\u2019\u5168\u6587\u5339\u914d\u2019(\u540c\u6837\u62e5\u6709\u67e5\u627e\u591a\u4e2a\u5143\u7d20\u7684elements\u65b9\u6cd5)<\/td><\/tr><tr><td>.find_element_by_partial_link_text(\u6587\u672c)<\/td><td>\u6839\u636e\u6807\u7b7e\u4e2d\u7684\u6587\u672c\u67e5\u627e\u5143\u7d20,\u90e8\u5206\u5339\u914d\u5373\u53ef,\u6bd4\u5982&lt;p&gt;\u5168\u6587\u5339\u914d&lt;\/p&gt;\u65f6\u6587\u672c\u53ef\u4ee5\u4e3a\u2019\u5339\u914d\u2019(\u540c\u6837\u62e5\u6709\u67e5\u627e\u591a\u4e2a\u5143\u7d20\u7684elements\u65b9\u6cd5)<\/td><\/tr><tr><td>.find_element_by_name(name\u540d)<\/td><td>\u6309\u540d\u79f0\u67e5\u627e\u5143\u7d20\u3002(\u540c\u6837\u62e5\u6709\u67e5\u627e\u591a\u4e2a\u5143\u7d20\u7684elements\u65b9\u6cd5)<\/td><\/tr><tr><td>.find_element_by_tag_name(HTML\u6807\u7b7e)<\/td><td>\u6309HTML\u6807\u7b7e\u67e5\u627e\u5143\u7d20\u3002(\u540c\u6837\u62e5\u6709\u67e5\u627e\u591a\u4e2a\u5143\u7d20\u7684elements\u65b9\u6cd5)<\/td><\/tr><tr><td>.find_element_by_css_selector(css\u9009\u62e9\u5668)<\/td><td>\u6839\u636ecss\u9009\u62e9\u5668\u67e5\u627e\u5143\u7d20\u3002(\u540c\u6837\u62e5\u6709\u67e5\u627e\u591a\u4e2a\u5143\u7d20\u7684elements\u65b9\u6cd5)<\/td><\/tr><tr><td>.find_element(\u7b56\u7565\u5668 ,&#8217;\u5143\u7d20&#8217;)<\/td><td>\u7b56\u7565\u5668\u5305\u542bBy.ID,By.TAG_NAME,By.CLASS_NAME,By.NAME(\u540c\u6837\u62e5\u6709\u67e5\u627e\u591a\u4e2a\u5143\u7d20\u7684elements\u65b9\u6cd5) \u7b56\u7565\u5668\u9700\u8981\u5bfc\u5165from selenium.webdriver.common.by import By<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">\u884c\u4e3a\u94fe(\u6a21\u62df\u9f20\u6807\u4e0e\u952e\u76d8)<\/h2>\n\n\n\n<p>\u6a21\u62df\u9f20\u6807\u7684\u5355\u51fb,\u53cc\u51fb,\u53f3\u51fb,\u60ac\u6d6e\u7b49\u64cd\u4f5c\u3002\u9700\u8981\u5f15\u5165from selenium.webdriver.common.action_chains import ActionChains \u3002\u521b\u5efa\u884c\u4e3a\u94fe\u9700\u8981\u5148\u5b9e\u4f8b\u5316\u4e00\u4e2a\u9f20\u6807ActionChains(WebDriver\u5b9e\u4f8b)\u6bd4\u5982mouse = ActionChains(self.driver)<\/p>\n\n\n\n<figure id=\"W0tjr\" class=\"wp-block-table\"><table><tbody><tr><td>\u884c\u4e3a\u94fe\u6a21\u62df\u9f20\u6807\u65b9\u6cd5<\/td><td>\u4f5c\u7528<\/td><\/tr><tr><td>.perform()<\/td><td>\u6267\u884c\u64cd\u4f5c(\u884c\u4e3a\u94fe\u662f\u4e00\u7cfb\u5217\u64cd\u4f5c,\u6700\u540e\u9700\u8981\u4f7f\u7528\u6b64\u65b9\u6cd5\u8ba9\u5176\u4ed6\u65b9\u6cd5\u5f00\u59cb\u6267\u884c,\u7c7b\u4f3c\u6570\u636e\u5e93\u4e8b\u52a1\u7684\u63d0\u4ea4\u64cd\u4f5c)<\/td><\/tr><tr><td>.reset_actions()<\/td><td>\u6e05\u9664\u64cd\u4f5c(\u76f8\u5f53\u4e8e\u6570\u636e\u5e93\u4e2d\u4e8b\u52a1\u7684\u56de\u6eda)<\/td><\/tr><tr><td>.click(\u70b9\u51fb\u5bf9\u8c61)<\/td><td>\u70b9\u51fb\u5de6\u952e<\/td><\/tr><tr><td>.click_and_hold(\u70b9\u51fb\u5bf9\u8c61)<\/td><td>\u6309\u4f4f\u5de6\u952e(\u4e0e\u70b9\u51fb\u4e0d\u540c,\u8fd9\u662f\u6309\u4f4f\u4e0d\u677e)<\/td><\/tr><tr><td>.context_click(\u70b9\u51fb\u5bf9\u8c61)<\/td><td>\u70b9\u51fb\u53f3\u952e<\/td><\/tr><tr><td>.double_click(\u70b9\u51fb\u5bf9\u8c61)<\/td><td>\u53cc\u51fb\u9f20\u6807\u5de6\u952e<\/td><\/tr><tr><td>.drag_and_drop(\u4e0b\u79fb\u5bf9\u8c61, \u4e0a\u79fb\u5bf9\u8c61)<\/td><td>\u5c06\u6307\u5b9a\u5143\u7d20\u4e0a\u4e0b\u79fb\u52a8<\/td><\/tr><tr><td>.drag_and_drop_by_offset(\u70b9\u51fb\u5bf9\u8c61, x, y)<\/td><td>\u70b9\u51fb\u6307\u5b9a\u5bf9\u8c61\u540e\u62d6\u52a8\u81f3\u6307\u5b9axy\u533a\u57df<\/td><\/tr><tr><td>.move_by_offset(x, y)<\/td><td>\u79fb\u52a8\u9f20\u6807\u5230\u5750\u6807xy<\/td><\/tr><tr><td>.move_to_element(\u6307\u5b9a\u5bf9\u8c61)<\/td><td>\u5c06\u9f20\u6807\u79fb\u52a8\u5230\u6307\u5b9a\u5bf9\u8c61\u4e0a\u5e76\u5f00\u59cb\u60ac\u505c<\/td><\/tr><tr><td>.move_to_element_with_offset(\u6307\u5b9a\u5bf9\u8c61, x, y)<\/td><td>\u5c06\u9f20\u6807\u79fb\u52a8\u5230\u6307\u5b9a\u5bf9\u8c61\u540e\u5e76\u504f\u79fbxy\u3002<\/td><\/tr><tr><td>.release(\u6307\u5b9a\u5bf9\u8c61)<\/td><td>\u5728\u6307\u5b9a\u5bf9\u8c61\u4e0a\u653e\u5f00\u9f20\u6807,\u4e0d\u6307\u5b9a\u5bf9\u8c61\u5219\u4e3a\u5f53\u524d\u4f4d\u7f6e\u653e\u5f00\u9f20\u6807<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<figure id=\"xkPQB\" class=\"wp-block-table\"><table><tbody><tr><td>\u884c\u4e3a\u94fe\u6a21\u62df\u952e\u76d8\u65b9\u6cd5<\/td><td>\u4f5c\u7528<\/td><\/tr><tr><td>.key_down(\u6309\u952e, \u53d1\u9001\u5bf9\u8c61)<\/td><td>\u6309\u4e0b\u952e\u76d8\u6309\u952e,\u4f46\u4e0d\u91ca\u653e\u952e\u76d8(\u9700\u8981\u540c\u65f6\u6309\u4f4f\u591a\u952e\u65f6\u4f7f\u7528),\u6bcf\u6b21\u53ea\u80fd\u4f20\u5165\u4e00\u4e2a\u6309\u952e,\u5982\u679c\u6ca1\u6709\u53d1\u9001\u5bf9\u8c61,\u5219\u60f3\u5f53\u524d\u7126\u70b9\u53d1\u9001<\/td><\/tr><tr><td>.send_keys(\u6309\u952e)<\/td><td>\u9009\u62e9\u6309\u952e<\/td><\/tr><tr><td>.key_up(\u6309\u952e, \u53d1\u9001\u5bf9\u8c61)<\/td><td>\u653e\u5f00\u6309\u952e,\u5982\u679c\u6ca1\u6709\u53d1\u9001\u5bf9\u8c61,\u5219\u60f3\u5f53\u524d\u7126\u70b9\u53d1\u9001<\/td><\/tr><tr><td>send_keys_to_element(\u53d1\u9001\u5bf9\u8c61, \u6309\u952e)<\/td><td>\u70b9\u51fb\u952e\u76d8<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<pre class=\"wp-block-code\"><code>from selenium import webdriver\nfrom selenium.webdriver.common.action_chains import ActionChains\nfrom selenium.webdriver.common.keys import Keys\n# \u5047\u8bbe\u9700\u8981\u6309ctrl+c\ndriver = webdriver.Firefox()\nActionChains(driver).key_down(Keys.CONTROL).send_keys('c').key_up(Keys.CONTROL).perform()<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">\u4fdd\u5b58\u7f51\u9875\u5feb\u7167<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td>\u4f7f\u7528\u65b9\u6cd5<\/td><td>\u4f5c\u7528<\/td><\/tr><tr><td>.get_screenshot_as_file(\u6587\u4ef6\u8def\u5f84.png)<\/td><td>\u8981\u5c06\u5c4f\u5e55\u5feb\u7167\u4fdd\u5b58\u5230\u6307\u5b9a\u8def\u5f84.save_screenshot(\u6587\u4ef6\u8def\u5f84.png)\u65b9\u6cd5\u4f5c\u7528\u76f8\u540c<\/td><\/tr><tr><td>.get_screenshot_as_png()<\/td><td>\u83b7\u53d6\u5c4f\u5e55\u5feb\u7167\u7684\u4e8c\u8fdb\u5236\u5e76\u4f5c\u4e3a\u8fd4\u56de\u503c\u8fd4\u56de<\/td><\/tr><tr><td>.get_screenshot_as_base64()<\/td><td>\u83b7\u53d6\u5c4f\u5e55\u5feb\u7167\u7684base64\u7f16\u7801\u5b57\u7b26\u4e32\u5e76\u4f5c\u4e3a\u8fd4\u56de\u503c\u8fd4\u56de\uff0c\u5728HTML\u4e2d\u7684\u5d4c\u5165\u56fe\u50cf\u4e2d\u975e\u5e38\u6709\u7528\u3002<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">\u5bf9cookie\u7684\u64cd\u4f5c<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td>\u4f7f\u7528\u65b9\u6cd5<\/td><td>\u4f5c\u7528<\/td><\/tr><tr><td>.get_cookies()<\/td><td>\u7528\u5b57\u5178\u7684\u65b9\u5f0f\u8fd4\u56de\u83b7\u53d6\u7684cookies<\/td><\/tr><tr><td>.get_cookie(cookie\u540d)<\/td><td>\u6309cookie\u5bfb\u627ecookie<\/td><\/tr><tr><td>.delete_cookie(\u540d\u79f0)<\/td><td>\u5220\u9664\u6307\u5b9a\u540d\u79f0\u7684cookie<\/td><\/tr><tr><td>.delete_all_cookies()<\/td><td>\u5220\u9664\u5168\u90e8cookie<\/td><\/tr><tr><td>.add_cookie(cookie)<\/td><td>\u5c06cookie\u6dfb\u52a0\u5230\u5f53\u524d\u7f51\u9875<\/td><\/tr><\/tbody><\/table><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>\u9a71\u52a8\u7684\u5e38\u7528\u65b9\u6cd5 driver\u65b9\u6cd5 \u4f5c\u7528 .name \u68c0\u67e5\u9a71\u52a8\u662f\u57fa\u4e8e\u4ec0\u4e48\u6d4f\u89c8\u5668(\u5047\u8bbe\u4e3a.Firefox(),\u8fd4\u56de [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[11,66,65],"tags":[59,58],"class_list":["post-597","post","type-post","status-publish","format-standard","hentry","category-python","category-selenium","category-crawler","tag-python","tag-58"],"_links":{"self":[{"href":"https:\/\/usei.cn\/index.php\/wp-json\/wp\/v2\/posts\/597","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/usei.cn\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/usei.cn\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/usei.cn\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/usei.cn\/index.php\/wp-json\/wp\/v2\/comments?post=597"}],"version-history":[{"count":2,"href":"https:\/\/usei.cn\/index.php\/wp-json\/wp\/v2\/posts\/597\/revisions"}],"predecessor-version":[{"id":600,"href":"https:\/\/usei.cn\/index.php\/wp-json\/wp\/v2\/posts\/597\/revisions\/600"}],"wp:attachment":[{"href":"https:\/\/usei.cn\/index.php\/wp-json\/wp\/v2\/media?parent=597"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/usei.cn\/index.php\/wp-json\/wp\/v2\/categories?post=597"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/usei.cn\/index.php\/wp-json\/wp\/v2\/tags?post=597"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}