今天在爬取网页超链接时使用requests先进行爬取结果发现无法爬取到网页中的超链接,对网页的源码进行查看时发现我所要爬取的超链接是属于ul路径下,上网查了一下。
ul 标签定义无序列表。
而现在的网页用的大多是ajax技术,网页中的列表是属于异步传输,需要下拉才可以加载出来。所以我又换了一个使用selenium来爬取,爬取时我又发现了一点问题
在selenium中是使用get_attribute(‘href’) 方法来获取a下面的href内容
[i.get_attribute('href') for i in driver.find_elements_by_tag_name('a')]
而使用requests是使用get(‘href’)来获取链接内容
[i.get('href') for i in te.find_all('a',{'href':True})]
这里的错误让我耗费了半个多小时!!哎
因此这里得注意一下对于爬取动态ajax网页最好还是使用selenium,获取超链接时注意方法的调用