Making Your Daily Desktop Background Updater

က်ြန္ေတ္ာတို့ဒီေန့ Bing Wallpaper of the day က ပုံကုိ က်ြန္ေတာ္တုိ့ desktop background အေနနဲ့ ဘယ္လုိ script ေလး run လုိက္တာနဲ့ auto download သြားလုပ္ျပီးေျပာင္းရမယ္ဆိုတာကုိၾကည့္ရေအာင္။က်ြန္ေတာ္တုိ့ bing က ေန့တစ္ေန့တာရဲ့ အေကာင္းဆုံး background ပုံကုိအျမဲေျပာင္းေပးပါတယ္။က်ြန္ေတာ္တုိ့လုပ္ရမယ့္အလုပ္က အဲ့website ကုိ request လြွတ္ျပီး ရလာမယ့္response ထဲကမွ လုိခ်င္တဲ့ tags ကုိျပန္ထုတ္ရျပီး အဲ့ကေန image ရဲ့ data ရေတာ့ ျပန္ျပီး ပုံကုိ download ျပန္ဆြဲျပီး ခ်ိန္းရမွာပါ။ေအာက္က code ကုိၾကည့္လုိက္ပါ။

က်ြန္ေတာ္တုိ့ line 1 to 4 မွာလုိအပ္တာေတြ import လုပ္လုိက္ပါတယ္။ဒီ tutorial မွာလုိအပ္တာေတြဘယ္လုိ install လုပ္ရမယ္ကုိ မသိရင္ Downloading All Images From Web Page မွာသြားဖတ္ေပးပါ။က်ြန္ေတာ္ဒီ ပုိ့စ္မွာေတာ့ သိပ္မေျပာေတာ့ပါဘူး။

က်ြန္ေတာ္ေျပာခဲ့သလုိ step 1 website  url = “https://bingwallpaper.com/” ကုိ request ပုိ့ရမွာမုိ့လုိ့ requests ကုိသုံးျပီး get method နဲ့ပုိ့လုိက္ျပီး response ကုိ res ထဲထည့္လုိက္ပါတယ္။step 2 လုိခ်င္တာေတြရွာရမွာမုိ့လုိ့ BeautifulSoup ကုိသုံးျပီး လုိအပ္တာေတြ အကုန္ခြဲထုတ္လုိ့ရေအာင္ soup object ေဆာက္လုိက္ပါတယ္။အဲ့ soup object ထဲမွာပဲ က်ြန္ေတာ္တုိ့လုိခ်င္တာက website တစ္ခုလုံးက data မဟုတ္ပါဘူး။website ကုိသြားၾကည့္ျပီး ctrl+u source ဖြင့္ၾကည့္လုိက္ရင္ request လုပ္လုိက္တာနဲ့ cursor_zoom ဆုိတဲ့ class ထဲမွာ ဒိေန့ wallpaper image ေလးရွိေနပါတယ္။က်ြန္ေတာ္တုိ့ ဒီမွာ source ဖြင့္ၾကည့္ရင္ ေသခ်ာမေတြ့ရပါဘူး။ဘာလုိ့ဆုိေတာ့ ဖြင့္လုိက္တဲ့အခါ  အခု လုိ request response တင္မဟုတ္ပဲ javascript ေတြကလဲအလုပ္လုပ္ေနျပီမုိ့လုိ့ auto change ကုန္လုိ့ပါ။

အဲ့ေတာ့ က်ြန္ေတာ္တုိ့ line 15,16 မွာ image ရွာဖုိ့ cursor_zoom ဆုိတဲ့ class နဲ့အရင္ရွာလုိက္ေတာ့

အဲ့ထဲကမွက်ြႏ္ေတာ္တုိ့ လုိခ်င္တာက image ပဲမုိ့လုိ့ img ကုိထပ္ရွာလုိက္ပါတယ္ line 16 မွာ။က်ြန္ေတာ္တုိ့က download လုပ္မွာျဖစ္လုိ့ အေရးၾကီးဆုံးက image source src ပါ။line 19,20 မွာ image ကုိ ဘာနဲ့save မယ္နဲ့ ဒီေန့date နဲ့ save မယ္ကုိေရးထားပါတယ္။2018-08-27.jpg လုိ့ထြက္လာမွာပါ။ဘာလုိ့ဆုိေတာ့ အေပါ္ကေန src attribute ကုိၾကည့္မယ္ဆုိ ေနာက္ဆုံးမွာ .jpg နဲ့ဆုံးေနတာကုိေတြ့ရမွာပါ။

အဲ့ေတာ့က်ြန္ေတာ္တုိ့ urlretrieve ကုိသုံးျပီး image[‘src’]ကုိ download လုပ္လုိက္ပါတယ္။urlretrieve မွာ ပထမတစ္ခုက download လုပ္ဖုိ့ url ျဖစ္ျပီး ေနာက္တစ္ခုက  outputfile ပါ။အဲ့တာေၾကာင့္က်ြန္ေတာ္တုိ့ ထြက္ေစခ်င္တဲ့ file name ကုိထည့္ထားေတာ့ 2018-08-27.jpg အေနနဲ့ထြက္လာမွာပါ။

ေအာက္ဆုံးတစ္ေၾကာင္းက ေတာ့ command သုံးျပီး ubuntu မွာ background ခ်ိန္းတာပါ။ဒီေနရာမွာ windows os ဆုိအလုပ္မလုပ္ပါဘူး။အဲ့တာေတာ့ တမင္မျပတာပါ။ဘာလုိ့ဆုိေတာ့ ကုိယ္တုိင္ ခ်ိန္းလုိ့ရေအာင္ပါ။google မွာ ဘယ္လုိ change ရမယ္ကုိ ရွာျပီး try ၾကည့္ပါ။

အခုေတာ့ ubuntu 18.04 နဲ့စမ္းထားပါတယ္။က်ြန္ေတာ္တုိ့ ေနာက္ဆုံးမွာ os moduleကုိသုံးျပီး က်ြန္ေတာ္တုိ့ ပုံေလးရွိတဲ့ လမ္းေၾကာင္းကုိထည့္ေပးထားေတာ့ os.system နဲ့အထဲက command ကုိ run တဲ့အခါ ပုံဘယ္နားမွာရွိလဲသိေနေတာ့ အဲ့ပုံကုိ ခ်ိန္းေပးသြားတာပါ။အားလုံးေက်းဇူးတင္ပါတယ္။

ဘယ္ဘက္ေဒါင့္က အနီေရာင္ bellေလးကုိနွိပ္ျပီး noti allow လုပ္ေပးဖုိ့မေမ့နဲ့ေနာ္။

Share:

Leave a Reply