【问题标题】:Scrape Data from magibricks.com从 magibricks.com 抓取数据
【发布时间】:2019-01-28 07:29:51
【问题描述】:

我正在尝试从 magicbricks.com 抓取数据 但是当我尝试通过手动单击页面底部的第二页来更改页面时,页面链接保持不变。我得到相同的数据。如何加载剩余的页面。

例如: 这是第一页的链接。

https://www.magicbricks.com/property-for-sale/residential-real-estate?bedroom=1,2,3,4,5,%3E5&proptype=Multistorey-Apartment,Builder-Floor-Apartment,Penthouse,Studio-Apartment,Residential-House,Villa,Residential-Plot&cityName=Mumbai

第二页的链接与页面变化的唯一内容相同

https://www.magicbricks.com/property-for-sale/residential-real-estate?bedroom=1,2,3,4,5,%3E5&proptype=Multistorey-Apartment,Builder-Floor-Apartment,Penthouse,Studio-Apartment,Residential-House,Villa,Residential-Plot&cityName=Mumbai

import pandas as pd
from pandas import ExcelWriter
import requests,re,csv
from bs4 import BeautifulSoup

for i in range(1,5):      # Number of pages plus one 

   url = "https://www.magicbricks.com/property-for-sale/residential- 
   real-estate?bedroom=1,2,3,4,5,%3E5&proptype=Multistorey- 
   Apartment,Builder-Floor-Apartment,Penthouse,Studio- 
   Apartment,Residential-House,Villa,Residential- 
   Plot&cityName=Mumbai".format(i);

   r = requests.get(url)
   soup = BeautifulSoup(r.content)

我想抓取这个网站的 500 个条目

【问题讨论】:

  • 使用网络数据抓取工具或谷歌浏览器扩展。
  • @Karan,很遗憾,我看不到该网站,但我会列出一些你想要废弃的东西,对吗?这个列表有某种“下一步”按钮,内容会发生变化,但 URL 不会。这会猜测“下一步”按钮只是一个 ajax 调用;只有受影响的内容会得到更新。如果这个猜测是正确的,我会推荐使用scrapy,写一个爬虫,看看this
  • 好的。但我仍然不知道如何浏览 ajax 页面
  • magicbricks.com/propertyDetails/…);"
  • 它有一个变量 data-position="3" ,我可以发现它是独一无二的。我想要 500 个条目的数据。

标签: python web-scraping beautifulsoup


【解决方案1】:

尝试为此使用硒 browser.execute_script("window.scrollTo(0, document.body.scrollHeight);") 和这段 od 代码滚动

【讨论】:

    猜你喜欢
    相关资源
    最近更新 更多
    热门标签