Python selenium 爬虫遇到的一个非常难解的问题? page_source 是不是有毒?
- 首先, import 包
from selenium import webdriver
import requests
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.common.by import By
import re
import pandas as pd
from time import sleep
2. 然后打开淘宝搜索 iphone
browser=webdriver.Chrome()
browser.get(‘https://www.taobao.com’)
a=browser.find_element_by_id(‘q’)
a.send_keys(‘iphone’)
button=browser.find_element_by_css_selector(’.search-button’)
button.click()
3. 匪夷所思的问题来了, 用 r1 r2 分别表示第 1 ,2 页的源代码,提取店铺, 价格数据
title1=[]
price1=[]
stall1=[]
title2=[]
price2=[]
stall2=[]
c=browser.find_element_by_css_selector(’.input.J_Input’)#找到页码输入框
c.clear()#先清空,防止方框中有其他数字
c.send_keys(1)#输入页码
d=browser.find_element_by_css_selector(’.btn.J_Submit’)#翻页确定框
d.click()
r1=browser.page_source
title1=re.findall(’“raw_title”:"(.?)"’,r1,re.S)
price1=re.findall(’“view_price”:"(.?)"’,r1,re.S)
stall1=re.findall(‘user_id.?“nick”:"(.?)"’,r1,re.S)
#=============================================
c=browser.find_element_by_css_selector(’.input.J_Input’)#找到页码输入框
c.clear()#先清空,防止方框中有其他数字
c.send_keys(2)#输入页码
d=browser.find_element_by_css_selector(’.btn.J_Submit’)#翻页确定框
d.click()
r2=browser.page_source
title2=re.findall(’“raw_title”:"(.?)"’,r2,re.S)
price2=re.findall(’“view_price”:"(.?)"’,r2,re.S)
stall2=re.findall(‘user_id.?“nick”:"(.?)"’,r2,re.S)
r1==r2
price1==price2
title1==title2
4. 结果如下:
r1==r2
Out[90]: False
price1==price2
Out[91]: True
title1==title2
Out[92]: True
5. 哪位大佬说一下为什么 r1≠r2, 爬取的内容居然是一样的!!!
Python selenium 爬虫遇到的一个非常难解的问题? page_source 是不是有毒?
3 回复
前面 print 一下不就知道了?
r1≠r2, print 不 print 都一样
说句题外话
>>> import math
>>> math.nan == math.nan
False

