python爬取京东机票,监控机票,机票价格分析

又到了一年一度的国庆假期。今年国庆、中秋撞到一起,所以打算回家过节。从帝都到海口,每到节假日的机票都是全价票…2400大洋的单程票,消费不起呀!所以为了买到便宜点的机票,我就写了一个简单的爬虫来监控机票价钱。
可能有人会觉得,阿里飞猪,携程什么的都有监控,何必自找麻烦。对于一个程序员来说,能自己做到的事情就不会去使用别人的东西。而且他们的产品不一定能满足我的需求啊。废话不多说,正文分割线!


分析目标地址

跟以前一样,爬虫第一件事。分析目标,看他是怎么处理机票查询。
地址:https://jipiao.jd.com/
进入查询页面后,发现京东查机票。一共发了三个异步的get请求来请求机票数据。
这里写图片描述
这里,我也没弄明白为什么京东要使用3个请求来获取机票信息。多次测试发现,这三个请求中会有概率查不到机票。既然这样,我们代码中也请求三次,直到拿到机票结果信息。

构建请求

首先我们需要构建一个get请求,把参数一起传过去。

#模拟请求头(可以根据自己浏览器访问,直接copy过来。)
headers = {
        'Host': "jipiao.jd.com",
        'Accept-Language': "zh-CN,zh;q=0.8,en;q=0.6",
        'Accept-Encoding': "gzip, deflate, br",
        'X-Requested-With' : 'XMLHttpRequest',
        'Connection': "keep-alive",
        'User-Agent': "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.101 Safari/537.36"
    }

    #requests.session(),这样的requests请求,会带上前一次请求的sessionid
    roon_session = requests.session()

    #请求所携带的参数。需要哪些参数,分析目标地址。
    payload
  • 3
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
要使用Python爬取京东商品价格,可以按照以下步骤进行操作: 1. 首先,你需要安装`beautifulsoup4`和`requests`这两个库。你可以使用命令`pip install beautifulsoup4`和`pip install requests`来进行安装。 2. 在你的Python代码中,导入所需的库: ```python import requests from bs4 import BeautifulSoup ``` 3. 设置请求头,以免被京东发现是爬虫。你可以使用以下请求头: ```python headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36 QIHU 360SE'} ``` 4. 构造要爬取的商品页面的URL。比如,如果你要爬取iPhone的价格,你可以使用以下URL: ```python url = "https://search.jd.com/Search?keyword=iPhone" ``` 请注意替换`iPhone`为你要爬取的商品名称。 5. 发送GET请求获取京东商品页面的源码: ```python response = requests.get(url, headers=headers) html = response.text ``` 6. 使用BeautifulSoup解析源码,并提取商品价格。通过查看页面的HTML结构,找到包含商品价格的元素的CSS选择器,然后使用BeautifulSoup进行解析: ```python soup = BeautifulSoup(html, 'html.parser') price = soup.select('.p-price') # 使用正确的CSS选择器,请根据实际情况进行更改 ``` 请注意,这只是一个示例,你需要根据京东商品页面的实际HTML结构来确定正确的CSS选择器。 7. 最后,你可以将爬取到的商品价格进行处理和保存。可以将其打印出来,或者将其保存到文件或数据库中,以供后续使用。 请注意,京东网站可能会对爬虫进行限制,请确保你的爬虫行为符合网站的使用规则,并添加适当的延时和异常处理机制,以避免被封IP或其他问题。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [入门级,超简单的python使用requests+bs4库实现京东商品获取(附代码)](https://blog.csdn.net/qq_41738750/article/details/120052993)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [Python爬虫 批量采集京东商品数据,实时了解商品价格走势](https://blog.csdn.net/ooowwq/article/details/122435249)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值