﻿{"id":284,"date":"2020-07-06T22:52:32","date_gmt":"2020-07-06T14:52:32","guid":{"rendered":"https:\/\/byy3.com\/?p=284"},"modified":"2021-01-09T10:14:23","modified_gmt":"2021-01-09T02:14:23","slug":"%e7%94%a8%e4%ba%8erendez-vous%e7%ba%a6%e4%bc%9apython_selenium_chrome%e8%84%9a%e6%9c%ac","status":"publish","type":"post","link":"https:\/\/byy3.com\/?p=284","title":{"rendered":"\u7528\u4e8erendez-vous\u7ea6\u4f1apython_selenium_chrome\u811a\u672c"},"content":{"rendered":"\n<pre class=\"wp-block-code\"><code>from selenium import webdriver\nimport time\nimport smtplib\nfrom email.header import Header\nfrom email.mime.text import MIMEText\n\ndriver = webdriver.Chrome('C:\\Python\\Tools\\chromedriver.exe')\n#driver.fullscreen_window()\ndriver.get('http:\/\/www.meurthe-et-moselle.gouv.fr\/booking\/create\/22259\/1')\ndriver.implicitly_wait(4)\ndriver.find_element_by_id(\"planning22263\").click()\n#driver.find_element_by_xpath(\"\/\/*&#91;@id='condition_Booking']\/\/input&#91;@type='checkbox']\").click()\ntime.sleep(5)\ndriver.find_element_by_xpath(\"\/\/*&#91;@name='nextButton']\").click()\ntime.sleep(7)\n#if driver.current_window_handle (\"\/\/*&#91;@h2='V\u00e9rification de disponibilit\u00e9']\")driver.refresh()\n#else\ntext = driver.find_element_by_id(\"inner_Booking\").text\nprint(text)\nattribute = driver.find_element_by_id(\"dialog_Booking\").get_attribute('type')\nprint(attribute)\nresult = driver.find_element_by_id(\"dialog_Booking\").is_displayed()\nprint(result)\n\n#def send_email(text,result): #\u51fd\u6570\u4e2d\u90ae\u7bb1\u4fe1\u606f\u6539\u4e3a\u81ea\u5df1\u7684\n# \u7b2c\u4e09\u65b9 SMTP \u670d\u52a1\nmail_host=\"smtp.gmail.com\" #\u8bbe\u7f6e\u670d\u52a1\u5668\nmail_user=\"****.fr@gmail.com\" #\u7528\u6237\u540d\nmail_pass=\"****\" #\u53e3\u4ee4 \nmail_use_STARTTLS = True #\u4f7f\u7528ssl \n \nsender = '****@hotmail.com'\nreceivers = &#91;'****@gmail.com'] # \u63a5\u6536\u90ae\u4ef6\uff0c\u53ef\u8bbe\u7f6e\u4e3a\u4f60\u7684QQ\u90ae\u7bb1\u6216\u8005\u5176\u4ed6\u90ae\u7bb1\n \nmessage = MIMEText(text, 'plain', 'utf-8')\nmessage&#91;'From'] = Header(\"rdv_prfecture\", 'utf-8')\nmessage&#91;'To'] = Header(\"\u6d4b\u8bd5\", 'utf-8')\n \nsubject = 'Python SMTP \u90ae\u4ef6\u6d4b\u8bd5'\nmessage&#91;'Subject'] = Header(subject, 'utf-8')\ntext = (\"disponile:%s dialog:%s \"%(text,result)) \n \ntry:\n server = smtplib.SMTP(mail_host,587)\n server.starttls()\n # server.connect(mail_host, 587) # 25 \u4e3a SMTP \u7aef\u53e3\u53f7\n server.login(mail_user,mail_pass) \n server.sendmail(sender, receivers, message.as_string())\n print (\"\u90ae\u4ef6\u53d1\u9001\u6210\u529f\")\nexcept smtplib.SMTPException:\n print (\"Error: \u65e0\u6cd5\u53d1\u9001\u90ae\u4ef6\")\n\t\t\ntime.sleep(10)\n#return driver\ndriver.quit()\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u6ce8\u89e3\u8fd9\u662f\u4e00\u4e2awindwos\u73af\u5883python3\u7684\u811a\u672c\uff0c\u5173\u4e8elinux\u8fd8\u5f97\u505a\u4fee\u6539\uff0cpython\u7684selenium\u6a21\u5757\u64cd\u4f5c\u7f51\u9875\u81ea\u52a8\u5316\uff0c***\u9700\u8981\u5b89\u88c5\u9a71\u52a8webdriver\uff0c\u4f7f\u7528chrome\u6d4f\u89c8\u5668\u7684\u8bdd\u9700\u8981\u5b89\u88c5chrome_webdriver\u7248\u672c\u8981\u548c\u5f53\u524dchrome\u7248\u672c\u5bf9\u5e94&nbsp;83.0.4103.116\uff0cchrome_webdriver\u4e0b\u8f7d\u5730\u5740\u4e3a<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/byy3.com\/go\/?url=https:\/\/chromedriver.chromium.org\/\" rel=\"nofollow\" >https:\/\/chromedriver.chromium.org\/<\/a><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u529f\u80fd\u4ecb\u7ecd\uff0c\u81ea\u52a8\u9009\u62e9\u9884\u7ea6\u9879\u76ee\uff0c\u7136\u540e\u70b9\u51fb\u83b7\u53d6\u9884\u7ea6\uff0c\u5982\u679c\u4e0d\u662fdisponible\u7684\u8bdd\u5219\u53d1\u90ae\u4ef6\u901a\u77e5non-disponible\u3002\u6dfb\u52a0\u8ba1\u5212\u4efb\u52a1\u5230\u670d\u52a1\u5668\u4e2d1\u5c0f\u65f6\u8fd0\u884c\u4e00\u6b21\uff01<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>from selenium import webdriver\nimport time\nimport smtplib\nfrom email.header import Header\nfrom email.mime.text import MIMEText\n\ndriver = webdriver.Firefox()\ndriver.get(\"http:\/\/www.meurthe-et-moselle.gouv.fr\");\ncookie = driver.get_cookies()\ntime.sleep(5)\n#driver.manage().deleteAllCookies();\n#driver.findElement(By.xpath(\"\/\/ul&#91;@id='productListMain']\/li&#91;1]\/span\/a\")).click();\n\n#driver.fullscreen_window()\ndriver.get('http:\/\/www.meurthe-et-moselle.gouv.fr\/booking\/create\/22259\/1')\n\ndriver.implicitly_wait(4)\ndriver.find_element_by_id(\"planning22263\").click()\n#driver.find_element_by_xpath(\"\/\/*&#91;@id='condition_Booking']\/\/input&#91;@type='checkbox']\").click()\n\ntime.sleep(5)\n\ndriver.find_element_by_xpath(\"\/\/*&#91;@name='nextButton']\").click()\ntime.sleep(7)\n\n#if driver.current_window_handle (\"\/\/*&#91;@h2='V\u00e9rification de disponibilit\u00e9']\")driver.refresh()\n#else\n\ntext = driver.find_element_by_id(\"inner_Booking\").text\nprint(text)\nattribute = driver.find_element_by_id(\"dialog_Booking\").get_attribute('type')\nprint(attribute)\nresult = driver.find_element_by_id(\"dialog_Booking\").is_displayed()\nprint(result)\n\n#def send_email(text,result): #\u51fd\u6570\u4e2d\u90ae\u7bb1\u4fe1\u606f\u6539\u4e3a\u81ea\u5df1\u7684\n# \u7b2c\u4e09\u65b9 SMTP \u670d\u52a1\nmail_host=\"smtp.gmail.com\" #\u8bbe\u7f6e\u670d\u52a1\u5668\nmail_user=\"***.fr@gmail.com\" #\u7528\u6237\u540d\nmail_pass=\"***\" #\u53e3\u4ee4 \nmail_use_STARTTLS = True #\u4f7f\u7528ssl \n\nsender = 'lvwuwei@hotmail.com'\nreceivers = &#91;'***@gmail.com'] # \u63a5\u6536\u90ae\u4ef6\uff0c\u53ef\u8bbe\u7f6e\u4e3a\u4f60\u7684QQ\u90ae\u7bb1\u6216\u8005\u5176\u4ed6\u90ae\u7bb1\nmessage = MIMEText(text, 'plain', 'utf-8')\nmessage&#91;'From'] = Header(\"rdv_prfecture\", 'utf-8')\nmessage&#91;'To'] = Header(\"\u6d4b\u8bd5\", 'utf-8')\nsubject = 'Python SMTP \u90ae\u4ef6\u6d4b\u8bd5'\nmessage&#91;'Subject'] = Header(subject, 'utf-8')\ntext = (\"disponile:%s dialog:%s \"%(text,result)) \n\ntry:\n server = smtplib.SMTP(mail_host,587)\n server.starttls()\n # server.connect(mail_host, 587) # 25 \u4e3a SMTP \u7aef\u53e3\u53f7\n server.login(mail_user,mail_pass) \n server.sendmail(sender, receivers, message.as_string())\n print (\"\u90ae\u4ef6\u53d1\u9001\u6210\u529f\")\nexcept smtplib.SMTPException:\n print (\"Error: \u65e0\u6cd5\u53d1\u9001\u90ae\u4ef6\")\ntime.sleep(10)\n#return driver\ndriver.quit()\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">linux \u73af\u5883\u9700\u8981\uff1apython3\u3001pip3\u3001 \u9700\u8981\u5b89\u88c5pip3 install selenium\u3001\u9700\u8981\u4e0b\u8f7dFirefox\u7684webdriver\u9a71\u52a8\uff0c\u6302\u5230\u670d\u52a1\u5668\u4e2d\u4f7f\u7528crontab\u6267\u884csh auto.sh<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">***\u524d\u63d0\u4f7f\u7528\u7684gmail smtp\u7684\u8bdd\u9700\u8981<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">1.smtp\u7aef\u53e3\u53f7\u4e0d\u662f\u9ed8\u8ba4\u768425,smtp\u7684\u662f587<br>2.\u5fc5\u987b\u8bbe\u7f6e\u201c<a href=\"https:\/\/byy3.com\/go\/?url=https:\/\/www.google.com\/settings\/security\/lesssecureapps?rfn=27&amp;rfnc=1&amp;et=0&amp;asae=2\" rel=\"nofollow\" >\u5141\u8bb8\u4f7f\u7528\u4e0d\u591f\u5b89\u5168\u7684\u5e94\u7528<\/a>\u201d<br>\u6700\u597d\u518d\u6b64\u670d\u52a1\u5668\u767b\u5f55gmail\u8d26\u53f7\u4e00\u904d \u901a\u8fc7 \u4e8c\u6b21\u9a8c\u8bc1\u540e \u5141\u8bb8\u5f02\u5730ip\u767b\u5f55<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">cookie\u95ee\u9898\u89e3\u51b3:***\u76ee\u6807\u7f51\u5740\u9700\u8981\u624b\u52a8\u8bbf\u95ee\u4e00\u6b21 \u5426\u5219\u975e\u6cd5\u64cd\u4f5c\u88abapache\u5217\u4e3aip\u9ed1\u540d\u5355<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" data-original=\"https:\/\/byy3.com\/wp-content\/uploads\/2020\/07\/20190426161358106-1024x319.png\" src=\"https:\/\/byy3.com\/wp-content\/themes\/MNews%20V2.4\/images\/post-loading.gif\" class=\"wp-image-340\" title=\"\u7528\u4e8erendez-vous\u7ea6\u4f1apython_selenium_chrome\u811a\u672c\u63d2\u56fe\" alt=\"\u7528\u4e8erendez-vous\u7ea6\u4f1apython_selenium_chrome\u811a\u672c\u63d2\u56fe\" \/><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>\u6ce8\u89e3\u8fd9\u662f\u4e00\u4e2awindwos\u73af\u5883python3\u7684\u811a\u672c\uff0c\u5173\u4e8elinux\u8fd8\u5f97\u505a\u4fee\u6539\uff0cpython\u7684selenium\u6a21 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[14,20,1],"tags":[353,352],"class_list":["post-284","post","type-post","status-publish","format-standard","hentry","category-linux","category-python","category-net-security","tag-linux","tag-python"],"_links":{"self":[{"href":"https:\/\/byy3.com\/index.php?rest_route=\/wp\/v2\/posts\/284","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/byy3.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/byy3.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/byy3.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/byy3.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=284"}],"version-history":[{"count":0,"href":"https:\/\/byy3.com\/index.php?rest_route=\/wp\/v2\/posts\/284\/revisions"}],"wp:attachment":[{"href":"https:\/\/byy3.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=284"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/byy3.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=284"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/byy3.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=284"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}