Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/290.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何修复类型错误,尽管它铸造?_Python_Selenium Webdriver - Fatal编程技术网

Python 如何修复类型错误,尽管它铸造?

Python 如何修复类型错误,尽管它铸造?,python,selenium-webdriver,Python,Selenium Webdriver,我正在使用selenium firefox-web-driver抓取一些网站。前7-8个链接被正确抓取。在那之后,我得到了打字错误 在我的代码中,正在创建Firefox web驱动程序,并在解析每个链接后处理driver.quit 已经试过把它扔给斯蒂恩了 回溯最近一次呼叫上次: 文件/home/umar/PycharmProjects/ShopToBDScraper/run_scraper.py,第21行,in 主要的 文件/home/umar/pycharm项目/ShopToBDScrape

我正在使用selenium firefox-web-driver抓取一些网站。前7-8个链接被正确抓取。在那之后,我得到了打字错误

在我的代码中,正在创建Firefox web驱动程序,并在解析每个链接后处理driver.quit

已经试过把它扔给斯蒂恩了

回溯最近一次呼叫上次: 文件/home/umar/PycharmProjects/ShopToBDScraper/run_scraper.py,第21行,in 主要的 文件/home/umar/pycharm项目/ShopToBDScraper/run_scraper.py,第13行,在main中 刮除数据线,我 文件/home/umar/pycharm项目/ShopToBDScraper/scraper/bs_scraper.py,第381行,在scrape_数据中 cdn=strath.ceilfloatcdn+8+floatcdn+8*15/100 TypeError:必须是str,而不是int
我猜你的错误是因为8是整数而不是字符串,因为cdn是字符串。尝试:

cdn = str(math.ceil((float(cdn) + 8) + (((float(cdn) + 8) * 15) / 100)))

请编辑您的问题以提供完整的错误回溯,以及发生错误的代码片段。这样可以吗?问题似乎是cdn的原始值是str,而不是可以加8的int。尝试将计算的最终结果转换为str既没有帮助,也没有必要。那么,为什么不在前6-7个链接中抛出错误?但在前6-7个链接中运行良好。如果在前6-7个链接完成后将cdn重新定义为str,这将抛出错误,因为您无法连接整数+str。现在您有floatcdn+8,它将连接内部,然后将答案更改为float。所以,如果你在做str+int,你会得到类型errorcdn没有被重新定义。它对所有链接使用相同的cdn。但是,我应用了你的解决方案,现在效果很好。非常感谢。我应该已经注意到了。您正在重新定义cdn,因为您正在将cdn设置为这行代码中的一个字符串cdn=strmath.ceil。。。。。经过一些迭代。当它是一个字符串时,它不能与该整数连接。我不能告诉你为什么它能工作,突然停止了,没有看到完整的代码,但很高兴为你解决了问题,并高兴地刮!