使用selenium将mac迁移到pc

时间:2014-10-03 21:49:53

标签: python macos selenium xpath cross-platform

对我而言,这应该是非常直接的,但我遇到了一些问题。

我有一些python代码在我的mac上完美运行(最新的操作系统py27),但现在我正在尝试将代码带到我的电脑来安排和完全自动化(win8 py27)我在代码上遇到错误否则工作正常。

代码是这样的:

def getElementsByxPath(mydriver,xPath,argKeys):

   try:

       a = mydriver.find_elements_by_xpath(xPath);
       a.send_keys(argKeys) 
       #error caused here. mac handles error on sending keys while it seems windows does not.
       return a;
   except:
       print "Unexpected error:", sys.exc_info()[0];
       return 0;


elem = olrHelper.getElementsByxPath(mydriver, ".//tr[@class='list-item']");

for e2 in elem:
    time.sleep(2)

    tryClick(e2)

    try:
        listingID = e2.get_attribute("data-id") #listingID is populated when I debug
        #additionally e2.is_displayed()==True



        field1 = extractAddress(protectedExtractText(olrHelper.getElementByxPath(mydriver, ".//h1", "")))
        #field1 is not populated and returns my default exception value. very odd.
    except:
        print 'error'

在我的Mac上,此代码有效(selenium)。在我的电脑上,这不起作用(硒)。

在PC上找不到xpath元素。

有没有人经历过类似的事情?我以为我很容易跨越OS功能。

谢谢

1 个答案:

答案 0 :(得分:-1)

我的第一个猜测是,问题根本不在于你的Python代码,而在HTML中存在差异,因为它已经修复了#34;由不同操作系统上的浏览器提供。换句话说,我怀疑其中一个浏览器稍微修改了收到的HTML以使渲染更容易。我'查看来源"在两个文件和WinDiff上。