下面这个网站页面,列出了很多AI网站,但是是以图片方式列出,点击图片会跳转到网站。怎么能把这些AI网站名称、AI网站网址自动爬取下来保存成excel文件呢? 首先,在chrome浏览器中点击右键,点击inspect,可以查看到每个图片超链接的网页源代码 可以看到,网址在href属性值里面,网站名称在alt属性值里面 但是,alt属性值后面多了一个logo,所以获取到这个属性值后要去掉logo这个串字符。 然后让ChatGPT写一段代码 复制粘贴到Visual Studio Code中运行,显示程序运行错误,推测应该是Python安装环境的问题 于是,安装Anaconda3,创建虚拟环境 虚拟环境创建成功了,但是无法激活,显示: CommandNotFoundError: Your shell has not been properly configured to use 'conda activate'. If using 'conda activate' from a batch script, change your invocation to 'CALL conda.bat activate'. To initialize your shell, run $ conda init 试了多个方法没成功,最后修改运行终端为command prompt,终于成功。 这时候程序没有报错,但是创建excel文件不成功。把出错信息丢给chatgpt,让它找解决办法。 尝试了chatgpt推荐的几个方法,没有成功。 放弃,于是让chatgpt不生成excel文件,只输出一个表格。 终于成功! 但是,有一个问题,我只想要AI相关的网站信息,但是这个程序把web3和其他网站信息都爬取下来了。 查看网页源代码,好像没有分成多个网页,所有这些网站都在一个html页面。那就让程序只爬取包含AI网站的div里面内容,修改chatgpt提示词: 然后在虚拟环境中跑这个Python程序 终于大功告成,爬取到真正想要的数据信息。 不过,这些表格信息复制到excel里面就乱了。 再尝试让chatgpt整理这些信息然后写入excel表格: 这次运行成功,成功创建如下excel表格,完美的将网页中的信息爬取和整理好了。 一些经验总结: Python编程一定要装Anaconda3,用虚拟环境来运行。很多时候出错,都是环境配置有问题。用虚拟环境可以完美解决这个问题。 多次迭代优化。由于现实中的情况复杂多变,很少情况下程序一次就跑通,要根据每次返回的错误信息去针对性的修改完善。 如果ChatGPT不能一次性完成设定的目标,就分解成两个甚至多个任务,然后一个个的完成。 |
|