扫码阅读
手机扫码阅读

关于《爬取知网文献信息》中代码的一些优化

177 2024-07-20

我们非常重视原创文章,为尊重知识产权并避免潜在的版权问题,我们在此提供文章的摘要供您初步了解。如果您想要查阅更为详尽的内容,访问作者的公众号页面获取完整文章。

查看原文:关于《爬取知网文献信息》中代码的一些优化
文章来源:
咸鱼运维杂谈
扫码关注公众号
文章摘要

哈喽大家好,我是咸鱼。本文对之前发布的《Python爬虫实战(5) | 爬取知网文献信息》文章中的代码进行了优化,并且提供了优化后的源码供大家参考。

问题

针对pycharm设置Edge驱动器时出现的“module 'selenium.webdriver' has no attribute 'EdgeOptions”错误,原因可能是使用了旧版本的selenium。建议更新到4.6以上版本以解决问题。新版本的selenium包含了Selenium Manager组件,它能够为Chrome、Firefox和Edge配置驱动,无需用户手动下载安装。

中文文档链接提供了关于如何更新驱动的指南:https://www.selenium.dev/zh-cn/documentation/webdriver/getting_started/install_drivers/

优化

修复了之前版本中只能爬取20倍数文献篇数的问题。对于获取不到网页的xpath元素的问题,提出了两种可能性:网页中的xpath元素可能会变化或网页加载太慢。建议用户检查xpath是否正确,或者增加等待超时时间。

优化后代码

咸鱼在文章中提供了优化后的代码,该代码包含了创建浏览器驱动器、打开页面、设置搜索主题和篇数等功能。代码采用显示等待+强制等待的方式,以应对加载慢的问题,并通过循环控制爬取的文章数量。代码中的webdriver.EdgeOptions()用于设置浏览器环境,比如禁止加载图片和设置无窗口模式,以提高爬取速度。

总结而言,文章提供了解决selenium环境设置问题的建议和解决方案,并且对原有的文献爬虫代码进行了优化,以提高爬虫的灵活性和效率。

想要了解更多内容?

查看原文:关于《爬取知网文献信息》中代码的一些优化
文章来源:
咸鱼运维杂谈
扫码关注公众号