tim2046
2021-09-08 09:49
采纳率: 66.7%
浏览 44
已结题

请各位大拿看看我的小爬虫脚本

事情是这样的,现在全球物料很差,我们需要每天跟进很多物料的最新到货信息,就要从网站上去查,每天全部查一遍基本可以下班了。
这个是我的查询网站:
https://www.cma-cgm.com/ebusiness/tracking
查询输入:

img


CMAU8282380
我分析了下是发送了一个post 请求
Request URL: https://www.cma-cgm.com/ebusiness/tracking/search
Request Method: POST
Status Code: 200
Remote Address: 65.58.25.250:443
Referrer Policy: no-referrer-when-downgrade
然后data 是: 用在post的参数里
SearchBy: Container
Reference: CMAU8282380
FromHome: true

但是我不知道为什么返回的response 还是当前页面,并没有得到查询的结果。
哪位大拿能帮忙写一个简单的代码 试试看呢?

  • 收藏

5条回答 默认 最新

  • 江天暮雪丨 2021-09-08 11:30
    已采纳

    使用 selenium 可以定位到 search 页面, 以下代码是一个简单的 Demo,保存查询后的 search 页面截图到本地

    from selenium import webdriver
    from selenium.webdriver.common.by import By
    from selenium.webdriver.support.wait import WebDriverWait
    from selenium.webdriver.support import expected_conditions as ec
    
    tracking_number = "CMAU8282380"
    
    driver = webdriver.Chrome()
    driver.get("http://www.cma-cgm.com/ebusiness/tracking")
    input_element = driver.find_element(By.ID, "Reference")
    search_button = driver.find_element(By.ID, "btnTracking")
    input_element.send_keys(tracking_number)
    search_button.click()
    
    WebDriverWait(driver, 3).until(ec.visibility_of_element_located((By.TAG_NAME, "tr")))
    driver.save_screenshot("search.png")
    driver.close()
    
    
    已采纳该答案
    打赏 评论
  • Goblin_M 2021-09-08 10:13

    你这。。。。。你自己不会写,就百度搜一下爬虫代码,自己改一下自己用

    打赏 评论
  • tim2046 2021-09-08 11:17

    嗯 我自己写了 研究 一晚上 没整出来。。。

    打赏 评论
  • l。Ve 2021-09-08 12:31

    有反爬吧。。试了试没出来也

    打赏 评论
  • tim2046 2021-09-08 13:06

    非常感谢你,因为我开始一直在用requests.post的方法一直返回不了。 看来还是用selenium是最快捷的了

    打赏 评论

相关推荐 更多相似问题