urllib2和webdriver得到的网页的源代码的不同
Posted 有挫败才有成长
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了urllib2和webdriver得到的网页的源代码的不同相关的知识,希望对你有一定的参考价值。
目标:扒取京东的笔记本电脑的信息(商品名和商品价格)
通过浏览器的开发者工具查看源代码:
一、使用urllib2获得页面源代码
1 # coding:UTF-8 2 import urllib2 3 url="https://list.jd.com/list.html?cat=670,671,672" 4 headers={"User-Agent":"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3298.4 Safari/537.36"} 5 request=urllib2.Request(url=url,headers=headers) 6 response=urllib2.urlopen(request) 7 html=response.read() 8 print html
运行结果关键截图:
分析:
urllib2得到的源代码和通过浏览器查看的源代码不尽相同,尤其是urllib2无法得到商品的价格
二、使用selenium的webdriver得到页面源代码
from selenium import webdriver driver=webdriver.Chrome() driver.maximize_window() url="https://list.jd.com/list.html?cat=670,671,672" driver.get(url) print driver.page_source
运行结果关键截图:
总结:
使用selenium的webdriver模拟用户得到的源代码和在用户在浏览器中查看的源代码一样,而urllib2得到的源代码是不包括js动态生成的元素代码
以上是关于urllib2和webdriver得到的网页的源代码的不同的主要内容,如果未能解决你的问题,请参考以下文章