Xem thông tin thời tiết trên Desktop bằng Geektool

tuanjuninho
25/4/2011 1:54Phản hồi: 11
Xem thông tin thời tiết trên Desktop bằng Geektool
Đầu tiên mình xin cảm ơn rất nhiều vì bài viết bổ ích của bác kuldokk về các sử dụng soft Geektool, giúp cho ace dùng Mac cá nhân hóa được Desktop của mình.
Mình cũng xin mạn phép mượn kiến thức của bài viết ... làm nền tảng, hướng dẫn những người dùng Mac cách đưa icon và thông tin về thời tiết ra ngoài Desktop:


Bình thường mình hay xem dự báo thời tiết bằng Widget có trong Exposé, hoặc cài thêm phần mềm thứ 3 vào, nhưng mình vẫn không thấy ưng ý với hai cách trên. Mình đã cùng với anh Google và anh Yahoo đã đưa được cái Weather ra ngoài Desktop như hình phía trên.
Mặc định là máy Mac của ace đã cài sẵn Geektool rồi nhé, trong bài này bạn phải tạo ra 5 shell với 4 shell chứa thông tin, các shll mình đều để refesh là 60s.
Bước 1. Đầu tiên vào trang: http://weather.yahoo.com/
Chọn tỉnh, thành phố mà các bạn đang ở (trong bài viết này, mình chọn là Nam Định vì mình ở Nam Định mà), chọn oC hay oF tùy các bạn (mình chọn oC)

Bước 2. Bạn mở Geektool tạo 1 manage groups với tên là "weather" sau đó tạo 1 Shell mới, copy đoạn script này vào phần "..." của mục command:

Code:
curl --silent "link_thời_tiết_tại_nơi_bạn_sống" | grep "forecast-icon" | sed "s/.*background\\:url(\\'\\(.*\\)\\')\\;\\ _background.*/\\1/" | xargs curl --silent -o /tmp/wpicture.png\
Bước 3. Bạn quay trở lại trình duyệt và copy address trên trình duyệt, paste đè lên đoạn script: link_thời_tiết_tại_nơi_bạn_sống

Bước 4. Bạn tạo 1 Shell mới trong Geektool, paste đoạn script này vào phần command giống bước 2:
Code:
file:///tmp/wpicture.png


Chú ý: ở đây sẽ có 2 shell : 1 shell thể hiện thông tin thời tiết (như hình mặt trời, mây...), 1 shell ko có thông tin gì nhưng không có nghĩa là bạn xóa nó đi vì 2 shell này bổ sung cho nhau.
Bước 5. Shell thứ ba phải tạo là thông tin về thời tiết, nhiệt độ tại thời điểm hiện tại.
Bạn làm như các bước ở trên và paste đoạn mã script dưới đây vào phần command:
Code:
curl --silent "http://xml.weather.yahoo.com/forecastrss?p=VMXX0011&u=c" | grep -E '(Current Conditions:|C<BR)' | sed -e 's/Current Conditions://' -e 's/<br \/>//' -e 's/<b>//' -e 's/<\/b>//' -e 's/<BR \/>//' -e 's/<description>//' -e 's/<\/description>//'
Các bạn lưu ý để có được đường link: http://xml.weather.yahoo.com/forecastrss?p=VMXX0011&u=c các bạn bấm biểu tượng RSS ở góc andress của trình duyệt.


hoặc bạn có thể thay thế dòng code : VMXX0011 (code của Nam Định) theo các code của 1 số thành phố khác ở Việt Nam như sau:
Haiphong: VMXX0005
Hanoi: VMXX0006

Quảng cáo


HCMC: VMXX0007
Huế: VMXX0009

Sau khi tạo xong shell thứ tư bạn sẽ có được thông tin như hình dưới đây:

Bước 6. Shell cuối cùng phải tạo là nhiệt độ cao nhất, thấp nhất trong ngày và dự báo thời tiết cho ngày hôm sau. Các bước thực hiện vẫn như trên, bạn paste đoạn script với nội dung sau:
Code:
echo && curl --silent " link_thời_tiết_tại_nơi_bạn_sống " | grep -e "Forecast:" -A 2 | tail -n 2 | sed -e 's/<br \/>//' -e 's/<BR \/>//' | sed "s/\(.*\)\.\ \(.*\)/\1\?\2/" | tr "?" "\n" | sed "s/High\:\ \(.*\)\ Low\:\ \(.*\)/\?High\: \1\ Low\:\ \2/" | sed "s/\?\(.*\)/\\1/"
Với: link_thời_tiết_tại_nơi_bạn_sống giống như ở bước 3

thành quả đạt được sẽ như sau:

Bạn có thể thay đổi font chữ, màu sắc, size font chữ, và vị trí các shell mà các bạn thích.

Quảng cáo



Chúc các bạn thành công.

PS: bài viết của mình có thể hơi rườm rà và 1 vài chỗ khó hiểu, mong nhận được ý kiến đóng góp của các bạn.

Thân.
11 bình luận
Chia sẻ

Xu hướng

hiphopboy
TÍCH CỰC
13 năm
Phần này mình làm mãi mà nó chả hiện lên chữ gì cả 😁



Bạn xem code có sai gì không
gửi bạn file đoạn mã, bạn down tại đây, sau đó bạn chon chuột phải open with bằng Geektool, tiếp đến bạn thay đổi lại link thời tiết:"http://xml.weather.yahoo.com/forecastrss?w=1252512&u=c" bằng link thời tiết nơi bạn ở nhé
hiphopboy
TÍCH CỰC
13 năm
Thanks bạn 😁 Thì ra do đoạn code trên bạn type giữa " link_nơi_bạn sống, có khoảng trống :d nên nó không hiện
Có thiếu xót, cảm ơn bạn đã nhắc nhở giúp
Các anh cho em hỏi là em làm đúng theo hướng dẫn nhưng vẫn không làm được shell 1 và 2 trong khi em làm được các shell còn lại mong các anh giúp dỡ
Tôi cũng vậy không hiển thị được hình 1 và hình 2, anh em giúp với nhé.
Các bạn có thể download code tại đây. Open with bằng Geektool.
Bác "tuanjuninho" ơi! Sao cái shell mặt trời của em nó không chịu " Lặn" đi khi em mở các ứng dụng khác Bác nhỉ? Bác giúp em với........
làm thế nào để xóa shell hả bác ....?
Ơ được rồi. hie hie ko để ý có cái dấu X trên góc 😁
sonkonica
ĐẠI BÀNG
13 năm
Cám ơn bác chủ thớt nhé!
Các bạn làm nếu không hiển thị được mặt trời nhớ chú ý cái link phần đầu là link thường, nó có tên của thành phố, ví dụ như: "http://weather.yahoo.com/angola/luanda/luanda-1261906/?unit=c", còn ở phần sau hiển thị nhiệt độ thì link RSS, vi dụ : "http://weather.yahooapis.com/forecastrss?p=AOXX0008&u=c"

Xu hướng

Bài mới









  • Chịu trách nhiệm nội dung: Trần Mạnh Hiệp
  • © 2024 Công ty Cổ phần MXH Tinh Tế
  • Địa chỉ: Số 70 Bà Huyện Thanh Quan, P. Võ Thị Sáu, Quận 3, TPHCM
  • Số điện thoại: 02822460095
  • MST: 0313255119
  • Giấy phép thiết lập MXH số 11/GP-BTTTT, Ký ngày: 08/01/2019