Selenium driver.get()修改URL

时间:2018-01-04 16:22:38

标签: python selenium

我有一个webscraper设置,可以浏览不同的日期并提取历史统计数据并将其保存到DF。直到今天我尝试更新我的数据库时,这一直很好。这是代码:

myDate = startDate
while myDate < endDate:
    dateFormat = "{date.month:02}{date.day:02}{date.year}".format(date=myDate)
    url = "http://www.example.com/?date="+dateFormat

    driver.get(url)
    print(url)

    time.sleep(3)
    html = driver.page_source

所以我添加了print命令只是为了查看它发送到chrome的URL,它反映了正确的URL。然而,一旦页面加载它添加&amp;在URL的末尾,后跟日期,页面将无法按预期加载。我测试了复制和粘贴格式化URL的功能,它还添加了&amp;但是,如果您手动输入地址,它不会?

基本上我的脚本发送了 http://www.example.com/?date=11272017

但返回的网址是 http://www.example.com/?date=11272017&date=11272017将我重定向到页面上的当前日期。希望这是有道理的。

我正在考虑将driver.get切换到sendkeys命令,但我不知道如何使用URL来处理它。我已经尝试在将URL放入浏览器并剥离&amp;但它只是再次添加...对此的任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:0)

啊!我已经弄清楚了。该网页曾经是常规HTTP,最近他们将所有网页都更改为HTTPS。对于可能遇到同样问题的任何人,请留下这个问题。这么小的东西让我难以忍受了一段时间!