目标:扒取京东的笔记本电脑的信息(商品名和商品价格)
通过浏览器的开发者工具查看源代码:
一、使用urllib2获得页面源代码
1 # coding:UTF-82 import urllib23 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 webdriverdriver=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得到的网页的源代码的不同
原文地址:https://www.cnblogs.com/beast-king/p/8419537.html