python中selenium控制浏览器尺寸

之前在自己电脑上写的代码测试运行非常完美,于是特别转移到了单独的一台笔记本上运行。

运行了几天之后发现有问题。selenium在抓取数据的时候莫名其妙的有一部分数据抓取不到。

分析代码呀什么的都没问题呀,奇了怪了。

三个td

1
2
3
4

前两个td里面的内容抓取的一点问题都没有,但是抓取第三个的时候就总是出错,用我自己的电脑测试就是好的。

我一度怀疑是不是我的笔记本电脑有什么驱动或者硬件导致的问题。

        biaoti = chanpin.find_element_by_xpath('./td[2]').text
        jine = float(chanpin.find_element_by_xpath('./td[3]').text)
        shuliang = int(chanpin.find_element_by_xpath('./td[5]').text)

前两个能抓取到,shuliang抓取不到。如果我把shuliang里面的td[5]换成td[4]就是抓取他前面那一个元素,也是没问题的。但是我换成td[6]抓取他后面的元素就不行。

最后我发现有可能是selenium打开的chrome浏览器大小的问题,因为浏览器里面打开的页面正好只能显示到td[4],第5列显示不出来。

于是加一行代码

driver.set_window_size(800, 800)

控制一下打开浏览器的大小,测试成功。shuliang成功抓取到了数据。


看来selenium真的是不是所见即所得的抓取模式,浏览器里面遮住的部分,他就抓不到了。

这可能也是很多selenium写好的代码换到别的电脑上执行就会出错的一个原因之一吧。

今天的分享记录就到这了。

展开阅读全文

页面更新:2024-03-27

标签:浏览器   笔记本电脑   莫名其妙   元素   尺寸   大小   两个   模式   代码   完美   页面   笔记本   硬件   测试   数据   电脑   科技

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号

Top