Python 清理Flipkart.com的所有手机
我正试图从www.flipkart.com上搜刮所有手机。现在,我想做的是,我可以从这里刮走所有的手机Python 清理Flipkart.com的所有手机,python,web-scraping,beautifulsoup,Python,Web Scraping,Beautifulsoup,我正试图从www.flipkart.com上搜刮所有手机。现在,我想做的是,我可以从这里刮走所有的手机 http://www.flipkart.com/mobiles/pr?p[]=sort%3Dprice_asc&sid=tyy%2C4io&layout=grid 现在的问题是,在这个网站上,我必须按“显示更多结果”才能看到更多结果。但是,如何使用代码来实现这一点?我正在使用python中的BeautifulSoup包 我的代码到现在为止: import bs4 impor
http://www.flipkart.com/mobiles/pr?p[]=sort%3Dprice_asc&sid=tyy%2C4io&layout=grid
现在的问题是,在这个网站上,我必须按“显示更多结果”才能看到更多结果。但是,如何使用代码来实现这一点?我正在使用python中的BeautifulSoup包
我的代码到现在为止:
import bs4
import re
import urllib2
import sys
link = 'http://www.flipkart.com/mobiles/pr?p[]=sort%3Dprice_asc&sid=tyy%2C4io&layout=grid'
response = urllib2.urlopen(link)
thePage = response.read()
soup = bs4.BeautifulSoup(thePage)
allMobiles = soup.find('div', attrs={'id': 'products'})
我只得到输出的第一页?如何访问其他页面?您可以使用get参数。常规URL为: http://www.flipkart.com/mobiles/pr?p[]=排序%3Dprice\u asc&sid=tyy%2C4io&layout=grid 点击“更多结果”按钮(或向下滚动)后,下一页将使用AJAX加载,url如下: url由以下部分组成:
- 路径:
- 查询字符串:
- p[]:排序=价格
- sid:tyy,4io
- 布局:网格
- 开始:41
- ajax:true
item_count = 600
for i in range(0, item_count, 40):
link = "http://www.flipkart.com/mobiles/pr?p%5B%5D=sort%3Dprice_asc&sid=tyy%2C4io&layout=grid&ajax=true&start=%d" % (i+1)
// Do something with the link
print link
享受,
不会