Phân tích giá vé máy bay từ San Jose đến Honululu

Một trong những đặc quyền làm việc ở Bờ Tây là tiếp cận gần hơn với những nơi như Hawaii và Alaska. Đã cạn kiệt tất cả các loại trái cây du lịch treo thấp ở Bờ Tây, tôi đã cố gắng trả lời câu hỏi sau:

Thời gian tiết kiệm nhất (giữa tháng 1 và tháng 5) để bay đến Honululu từ San Jose là gì?

Mặc dù thời gian trong năm thường là một yếu tố chính đối với hầu hết các điểm đến, như nói, San Francisco, nơi hầu hết các ngày hè, cây cầu Cổng Vàng bị che khuất trong sương mù, tôi đã nghe nói rằng thời tiết Hawaii tốt cả năm. Điều đó, cùng với chính sách nghỉ phép linh hoạt tại nơi làm việc, để lại chi phí là yếu tố quyết định chính duy nhất khi lên kế hoạch cho chuyến đi.

Do đó, tôi đã viết một số mã bằng Python để nhận vé máy bay khứ hồi cho chuyến đi 1 tuần cho tất cả các ngày khởi hành trong khoảng thời gian từ ngày 1 tháng 1. Điểm dữ liệu đầu tiên sẽ là vé máy bay khứ hồi với ngày khởi hành ngày 1 tháng 1 và trở về ngày 8, lần thứ hai sẽ là ngày khởi hành ngày 2 tháng 1 và trở về ngày 9, v.v.

từ weben nhập khẩu selen
nhập bs4
nhập thời gian, thời gian
 
## ngày khởi hành
ngày = datetime.datetime (2018,12,31)
## tăng ngày khởi hành thêm 1
cho tôi trong phạm vi (150):
    ngày + = datetime.timedelta (ngày = 1)
    start_month = date.month
    start_year = date.year
    start_day = ngày. ngày
    ## ngày trở về (1 tuần kể từ ngày khởi hành)
    end_date = ngày + datetime.timedelta (ngày = 7)
    end_month = end_date.month
    end_year = end_date.year
    end_day = end_date.day
    driver = webdo.Chrom () # Đối số tùy chọn, nếu không được chỉ định sẽ tìm đường dẫn.
    ## cập nhật URL cho mỗi ngày khởi hành
    url = 'https: //www.expedia.com/Flight-Search? trip = roundtrip & leg1 = from% 3ASan% 20Jose% 2C% 20CA% 2C% 20United% 20States% 20 (SJC)% 2Cto% 3AHonkish% 2C% 20HI% 2C% 20United% 20States% 20 (HNL)% 2Cdeparture% 3A '+ str (start_month) +'% 2F '+ str (start_day) +'% 2F '+ str (start_year) +' TANYT & leg2 = từ% 3AH 20HI% 2C% 20United% 20States% 20 (HNL)% 2Cto% 3ASan% 20Jose% 2C% 20CA% 2C% 20United% 20States% 20 (SJC)% 2Cdeparture% 3A '+ str (end_month) (end_day) + '% 2F' + str (end_year) + 'TANYT & hành khách = người lớn% 3A1% 2Cchildren% 3A0% 2Csenencies% 3A0% 2Cinfantinlap% 3AY & Options = cabinclass% 3Aeconomy & mode =
    driver.get (url)
    thời gian ngủ (15)
    InternalHTML = driver.execute_script ("return document.body.innerHTML")
    súp = bs4.BeautitableSoup (InternalHTML)
    x = soup.select ('span [class = "full-bold no-quấn"]')
    ## xuất ngày khởi hành và vé máy bay khứ hồi 1 tuần tương ứng
    in (start_month, '/', start_day, '/', start_year, ':', x [0] .getText ())
    driver.c Đóng ()

Điều này (và một số thao tác Excel) đã đưa ra một tập dữ liệu như bên dưới với giá hàng ngày:

Giá vé máy bay thu được là vào ngày 17 tháng 9., 18 và rất năng động. Ngoài ra, một số là giá vé mặc cả của Expedia (nơi bạn có thể đặt nhưng không được phép có một số đặc quyền nhất định).

Làm cho tập lệnh Python hoạt động và chạy mã là phần chính của công việc. Tìm giá vé máy bay thấp nhất sau đó là đơn giản. Dưới đây là Ngày khởi hành với giá thấp nhất:

Mặc dù phạm vi ban đầu chỉ là tìm một ngày để đặt vé, nhưng có tất cả các bảng dữ liệu này và nhìn thấy các mẫu trong bảng trên đã thúc đẩy một số phân tích thêm, với lời cảnh báo rằng các chuyến đi là 1 tuần và SJC-HNL. Đối với một chuyến đi khác nhau, giá vé có thể còn kinh tế hơn. Các ngày trong tuần và tháng một có vẻ như ngày và tháng rẻ hơn tương ứng để đi du lịch nên tôi đã đào thêm một chút.

Nói chung, có vẻ như thứ Hai đến thứ Năm là rẻ hơn để đi du lịch. Sự khác biệt về giá trung bình giữa ngày rẻ nhất (Thứ ba) và ngày đắt nhất (Thứ bảy) là khá đáng kể $ 155 vì vậy việc điều chỉnh kế hoạch trong một vài ngày có thể tạo ra sự khác biệt lớn:

Tuy nhiên, điều quan trọng hơn ngày trong tuần đối với tôi là tháng. Một lưu ý khi xem xét xu hướng hàng tháng là giá bị ảnh hưởng bởi khoảng cách từ ngày đặt trước ngày khởi hành là:

Không được điều chỉnh cho điều này, có vẻ như tháng một là tháng rẻ nhất để đi du lịch và tháng hai chỉ đắt hơn một chút. Nó thường đắt hơn từ đó và tháng tư có vẻ như là tháng để tránh:

Hầu hết các ngày đắt đỏ để đi du lịch đều ở dưới, bị chi phối bởi các ngày vào giữa tháng 3 đến giữa tháng 4, ngoại trừ ngày 16 tháng 2 (có lẽ phải làm gì đó với Ngày Valentine Valentine):

Nếu bất cứ ai quan tâm đến toàn bộ chuỗi thời gian xem bên dưới. Năng động hàng tháng và ngày trong tuần / cuối tuần có thể được nhìn thấy rõ ràng:

Hy vọng nó giúp!