楼主: yaoyinuo888
961 7

[问答] 关于python selenium ,请问代码2哪里错了? [推广有奖]

  • 0关注
  • 0粉丝

硕士生

30%

还不是VIP/贵宾

-

威望
0
论坛币
1317 个
通用积分
0
学术水平
2 点
热心指数
2 点
信用等级
2 点
经验
1341 点
帖子
102
精华
0
在线时间
140 小时
注册时间
2016-6-26
最后登录
2022-2-8

楼主
yaoyinuo888 在职认证  发表于 2018-1-13 11:03:58 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
代码1:
#!/usr/bin/python
#-*- coding:gb18030 -*-

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

browser=webdriver.Chrome(executable_path="D:/AutoConf/bin/chromedriver.exe")
wait=WebDriverWait(browser, 10)
browser.get('https://www.taobao.com')

input = wait.until(
        EC.presence_of_element_located((By.CSS_SELECTOR, "#q"))
    )
submit = wait.until(EC.element_to_be_clickable((By.CSS_SELECTOR, "#J_TSearchForm > div.search-button > button")))
input.send_keys('美食')
submit.click()

代码2:
#!/usr/bin/python
#-*- coding:gb18030 -*-

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

browser =webdriver.Chrome(executable_path="D:/AutoConf/bin/chromedriver.exe")
wait=WebDriverWait(browser, 10)

def search():
        browser.get('https://www.taobao.com')

        input = wait.until(
                        EC.presence_of_element_located((By.CSS_SELECTOR, "#q"))
    )
        submit = wait.until(EC.element_to_be_clickable((By.CSS_SELECTOR, "#J_TSearchForm > div.search-button > button")))
        input.send_keys('美食')
        submit.click()

def main():
        search()
       
if '__name__'=='__main__':
        main()

代码2完全是复制黏贴代码1的,但是用代码1能成功打开网页,代码2白屏。请问是什么原因?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝


回帖推荐

gjinwei 发表于5楼  查看完整内容

if '__name__'=='__main__'的__name__不应用引号

沙发
gjinwei 发表于 2018-1-13 14:28:00
if '__name__'=='__main__' 这句中的__name__不应该加引号。我稍稍改一下:
  1. # -*- coding:UTF-8 -*-
  2. from selenium import webdriver
  3. from selenium.webdriver.common.by import By
  4. from selenium.webdriver.support.ui import WebDriverWait
  5. from selenium.webdriver.support import expected_conditions

  6. browser = webdriver.Firefox()
  7. wait = WebDriverWait(browser, 10)


  8. def search(key=None):
  9.     browser.get('https://www.taobao.com')
  10.     _input = wait.until(expected_conditions.presence_of_element_located((By.CSS_SELECTOR, '#q')))
  11.     _submit = wait.until(expected_conditions.element_to_be_clickable((By.CSS_SELECTOR, "#J_TSearchForm button")))
  12.     _input.send_keys(key)
  13.     _submit.click()


  14. if __name__ == '__main__':
  15.     search('美食')
  16.     # browser.close()
复制代码

藤椅
gjinwei 发表于 2018-1-13 14:30:07
怎么回复也要审核了啊?

板凳
yaoyinuo888 在职认证  发表于 2018-1-13 16:28:33
楼主把中间无关的代码都删除了,方便大家看.

代码1:
from selenium import webdriver

browser =webdriver.Chrome(executable_path="D:/AutoConf/bin/chromedriver.exe")
browser.get('http://www.hzqz.com/')

代码2:
from selenium import webdriver

browser =webdriver.Chrome(executable_path="D:/AutoConf/bin/chromedriver.exe")
def search():
        browser.get('http://www.hzqz.com/')

def main():
        search()
       
if '__name__'=='__main__':
        main()


1能打开网页,2打不开网页。一定是用def 定义函数的地方出问题了吧

报纸
gjinwei 发表于 2018-1-13 16:30:51
if '__name__'=='__main__'的__name__不应用引号

地板
yaoyinuo888 在职认证  发表于 2018-1-13 16:34:08
gjinwei 发表于 2018-1-13 16:30
if '__name__'=='__main__'的__name__不应用引号
感觉好丢人,真想挖个洞

7
gjinwei 发表于 2018-1-13 16:37:39
yaoyinuo888 发表于 2018-1-13 16:34
感觉好丢人,真想挖个洞
都这样过来的,出错才会有进步。你也可以用IDE,会提醒。不过没有卡住印象这么深吧

8
yaoyinuo888 在职认证  发表于 2018-1-13 16:40:50
gjinwei 发表于 2018-1-13 16:37
都这样过来的,出错才会有进步。你也可以用IDE,会提醒。不过没有卡住印象这么深吧
谢谢你的热心帮助,我有用pycharm,但是运行的时候报错

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-21 20:01