【问题标题】:web scraping: Iterate over pages of a site without can edit url with Python and Requests网页抓取:迭代网站的页面,而无需使用 Python 和请求编辑 url
【发布时间】:2018-10-30 00:33:51
【问题描述】:

我正在从this reseller site for cars 中提取数据,但我找不到遍历页面的方法。我通常通过更改 url 中存在的一些索引来进行迭代,但是在该站点的 url 中没有任何页面的索引

下面是一个示例代码,说明我可以通过编辑 url 来迭代页面时通常如何做:

import requests as req

url = "https://www.seminovosunidas.com.br/veiculos/page:{}?utm_source=afilio&utm_medium=display&utm_campaign=maio&utm_content=ron_ambos&utm_term=120x600_promocaomaio_performance_-_-"
indice_pagina = 1
dados = {}
r = req.get(url.format(indice_pagina))
print(r.text)

【问题讨论】:

    标签: python-3.x web-scraping python-requests


    【解决方案1】:

    我认为你是新手。每个 div 中都有链接,您可以在此路径中找到它并迭代更多页面

    #resultadoPesquisa > div:nth-child(1) > a
    

    并获取具有类似链接的herf属性

    /Paginas/detalhes-do-carro.aspx?o=fmKOUbLvWxA%3d
    

    您可以将其附加到 url 以请求产品

    所以应该是这样的

    complete_url = 'https://seminovos.localiza.com' + '/Paginas/detalhes-do-carro.aspx?o=fmKOUbLvWxA%3d'
    

    有什么问题可以留言

    【讨论】:

    • 这样我输入了汽车的具体网址,但我需要的是遍历搜索页面
    • 是的,可以通过调用适当的 javascript 函数来完成,在这种情况下它是 javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions("ctl00$ctl42$g_f221d036_75d3_4ee2_893d_0d7b40180245$PaginacaoCarrosSuperior$ctl01$NumeroPagina", "", "", false, true))
    • 好吧,我不懂javascript。我的领域是数据科学,而不是 Web 开发。你能更好地解释一下吗?
    • 你可以点击这个链接stackoverflow.com/questions/8284765/…如果你不明白,你可以继续使用python selenium,因为你不需要加载javascript,它会自动加载
    猜你喜欢
    • 1970-01-01
    • 2019-07-27
    • 2022-01-18
    • 2020-04-20
    • 1970-01-01
    • 2015-06-24
    • 2018-03-22
    • 2016-02-21
    • 1970-01-01
    相关资源
    最近更新 更多