Salom go'zal insonlar!
Dasturlash va Doodles blogiga xush kelibsiz! Ushbu maqolada men sizga psevdo-eksperiment natijalarini taqdim etmoqchiman: men foydalanadigan barcha sun'iy intellekt vositalarini blokirovka qilish va shunga qaramay, odatdagidek ishlayman (ishlab chiquvchi va texnik yozuvchi sifatida).
Bularni to'g'ridan-to'g'ri pochta qutingizga olish uchun obuna bo'ling: https://codedoodles.substack.com/
ChatGPT va boshqa AI chatbotlari va vositalari chiqarilgandan beri biz asta-sekin ishimizni yo'qotdik. Kodni, elektron pochta xabarlarini va hatto qisqa xabarlarni yozish va disk raskadrovka qilish uchun undan foydalanish, ehtimol, bu stsenariyga olib keldi. Eng yomoni, men "Tadqiqotlar shuni ko'rsatadiki, AIdan foydalanish bizning tanqidiy fikrlash qobiliyatimizni pasaytiradi" degan yozuvlarni ko'rib turibman. Bu meni tashvishga soldi: 2020-22 yillarda ChatGPT chiqishidan oldin menda mavjud bo'lgan ko'nikmalarim hali ham bormi?
Men bunga qo'shilolmayman: AI vositalari ko'p vaqtni tejaydi va samaradorlikni oshiradi. Lekin qanday narxda? Agar biz asta-sekin o'zimiz fikrlash va muammolarni o'zimiz hal qilish qobiliyatini yo'qotsak, biz insoniyatga berilgan eng katta sovg'alardan birini yo'q qilgan bo'lamiz.
Biroq, buni o'qib, noto'g'ri tushunmang: men sun'iy intellektni yomon ko'rmayman. Menimcha, bu dasturchilar tomonidan hayotga tatbiq etilgan ajoyib tushuncha va barchamiz undan muntazam foydalanamiz. Hozir ham mening Grammatik kengaytmam menga AI yordamida ushbu jumlalarni yaxshilash yo'llarini ko'rsatmoqda. Menga yoqmaydigan yagona narsa - biz ularga haddan tashqari ishonamiz. Shoot, men bu haqda boshqa maqola yozishim kerak!
Kontekstga qaytadigan bo'lsak, ishimni bajarish uchun AIdan qanchalik foydalanayotganimdan biroz hafsalamiz pir bo'ldi va har bir AI vositasini bir kunga bloklashga qaror qildim . Yaxshiyamki, men MacBook-ga ushbu ilovalarning hech birini yuklab olmagan edim, shuning uchun men qilishim kerak bo'lgan narsa ChatGPT, Claude, Gemini va DeepSeek-ni bloklash uchun kengaytmani olish edi.
Ushbu maqola ish bilan bir vaqtda yozilgan va tahrirlash bosqichida men uning biroz g'alati ko'rinishini angladim. Bu mening ahmoqona inson miyamning "fikrlash" jarayoni, xuddi ChatGPT mulohazalari kabi. Shu bilan sizdan meni ushbu maqola bo'yicha hukm qilmasligingizni so'rayman.
Date: Feb 17th, 2025 The to-do list: - Write a script to scrape Bing Search results (for a tutorial on building a scraper). - Review the PR #6 on GitHub. - Improve SEO of my personal site, chenuli.codedoodles.xyz (current SEO score was 85) - If more time's left, design a merch product.
(shunday kichik ishlar ro'yxati, ha, men o'zimning xo'jayinimman)
Python-da veb-qirqish - bu siz yozishingiz mumkin bo'lgan eng oson dasturlardan biri va ko'pincha e'tibordan chetda qoladi. Men TikTok kabi turli platformalarni Apify bilan qirqish bo'yicha 3-4 ta maqola yozdim, ammo skriptni yozish uchun ChatGPT-da bir yoki ikkita tez kifoya qildi:
Write a python script using selenium and chromedriver to scrape "Trending Videos" page on TikTok. Structure: Page consists of a card-like structure which consists of trending videos on TikTok. These are inside a <div> container with the class of tiktok-559e6k-DivItemContainer e1aajktk28 blah blah and blah
Lekin bu safar boshqacha. Avval skriptning asosini yozaman, uni sinab ko'raman va ehtiyojlarga qarab optimallashtiraman.
Qaysi kutubxonadan foydalanishni hal qilish uchun bir necha daqiqa vaqt sarfladim: dramaturg, selen yoki chiroyli sho'rva. Beautifulshoup eng oson va eng oddiy variantga o'xshardi, shuning uchun men u bilan bordim.
import requests from bs4 import BeautifulSoup
Keyin bot himoyasi (yoki CAPTCHA) tomonidan bloklanmaslik uchun haqiqiy brauzer so'roviga taqlid qiluvchi sarlavha yozishim kerak. O'zim buni to'g'ri yozish men uchun biroz imkonsiz, shuning uchun men beixtiyor ChatGPT ni ochdim. Qo'rqinchli, ha, lekin eng yaxshisi uchun bloklangan.
Uzoq vaqtdan so'ng men Google-dan namuna so'rovi uchun foydalandim. Qanday qutqaruvchi.
headers={"User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/111.0.0.0 Safari/537.36"}
Keyin, ehtimol, Bing foydalanadigan qidiruv havolasini yaratishim kerak. Menimcha, Googlega o'xshash bo'lishi kerak.
Men sinf o'zgaruvchilarini aniqlashim kerak (siz buni shunday deysiz), ularni alohida-alohida qirib tashlash uchun.
Bu borada Bing juda yaxshi ish qiladi. Natijalar ro'yxat tuzilmasida, <ol>
, har bir ro'yxat elementi bitta qidiruv natijasidir. Bu ishlarni ancha osonlashtiradi. Men ushbu <li> elementlarning barchasini sahifadan o'chirib tashlashim va ularni bitta o'zgaruvchiga belgilashim mumkin va keyin tsikldan foydalanib, sarlavhalar va havolalarni aniq formatlashim mumkin. Toza! Daho usul emas, lekin men hech bo'lmaganda fikrlash qobiliyatini butunlay yo'qotganim yo'q.
completeData = soup.find_all("li",{"class":"b_algo"})
O, otish, bu ahmoq! U shunchaki keraksiz pastadirdan foydalanadi va uni qayta ishlatib bo'lmaydi.
Biz faqat elementlar ro'yxatini o'zimiz aylana olamiz. Va keling, xatolarni hal qilishni ham qo'shamiz.
for item in soup.find_all("li", class_="b_algo"): title = item.find("h2") link = title.find("a")["href"] if title else "" results.append((title.text if title else "No title", link)) if response.status_code != 200: print("Failed to retrieve search results") return []
Bu ancha yaxshi. Nihoyat, biz formatlash uchun yana bir tsikl qo'shishimiz va natijalarni shunga mos ravishda chop etishimiz mumkin.
search_results = scrape_bing("Programming and Doodles") for title, link in search_results: print(f"{title}: {link}")
Keyinchalik ikkita kichik sintaksis xatosi, u ishlaydi!
Bu ajoyib tuyuldi. Xuddi eski yaxshi kunlar kabi.
Bu uzoq davom etmasligi kerak. Bu shunchaki uzoq Python skripti.
PRga qaraganda, kod operatsiyalarga xalaqit bermadi. Biroq, elementlar men yaratgan asl nusxa kabi markazlashtirilmagan. Lekin men bu PRni 2-marta ko'rib chiqyapman va bu ishtirokchi yangi ko'rinadi. O'zgarishlarni yana so'rash yomon tuyuladi, men buni o'zim tuzataman va yaxshi ko'rib chiqaman.
Kodni tekshirib, u yaxshi ish qildi. Lekin negadir u GUI-ga yopishqoq o'zgaruvchini qo'ygan bo'lishi kerak. Menga ruxsat bering.
Humm, hali ishlamayapti. Tkinterda markazlashtiruvchi elementlarni qo'llab-quvvatlaydigan biror narsa bo'lishi kerak.
Men rel kalit so'zini eslayman, lekin uni barcha elementlarga qo'shish charchaydi. Googledagi natijalarning aksariyati xuddi shunday ko'rsatadi.
Oh, topildi! Buning uchun biz faqat grid_columnconfigure dan foydalanishimiz mumkin. Rahmat, StackOverflow-da bitRAKE.
Oh, men 2025 yilda ishlab chiquvchi sifatida AIsiz yaxshi yashay olaman.
Men yaqinda shaxsiy veb-sayt yaratdim (portfel emas), lekin uning SEO reytingi biroz dahshatli.
SEOni yaxshilashning asosiy yo'li har doim boy natijalar uchun tuzilgan ma'lumotlardan (sxema belgilaridan) foydalanishdir. Agar siz bilmagan bo'lsangiz, bu qidiruv tizimlariga kontentingizni yaxshiroq tushunishga yordam beradigan metama'lumotlarning bir shakli bo'lib, boy parchalar, tez-tez so'raladigan savollar va bilim panellari kabi kengaytirilgan qidiruv natijalariga olib keladi. Agar sizning saytingiz SEO 100 bo'lmasa, boy natijalarni yoqish uni 100 taga aylantirishi mumkin.
Bu men ChatGPT dan qilishni so'ragan narsadir; Men tarkibni yozaman va undan to'g'ri sintaksisdan foydalanishni so'rayman. Bu vaqtni sezilarli darajada qisqartiradi, lekin bloklangani uchun men buni o'zim yozaman deb o'yladim.
Yoki asosiy saytim codedoodles.xyz dan sxema belgilarini nusxalash/joylashtirish va uni o‘zgartirishim mumkin. Bu mening kodim, baribir.
Bundan tashqari, men FAQ bo'limini ham qo'shishim mumkin. Lekin Google siyosatida veb-saytda ko'rinmaydigan kontentga sxema belgilarini qo'shish mumkin emasligi haqida o'qiganimni eslayman. Shubhasiz, mening veb-saytimda tez-tez so'raladigan savollar bo'limi yo'q.
Lekin bu yaxshi. Men hali ham "Chenuli Jayasinghe kim" kabi savolni qo'shishim mumkin va javob veb-saytdagi tarkibning qisqacha mazmuni bo'ladi. G'alaba qozonish!
Ajoyib ko'rinadi. Joylashtirishdan keyin ball ko'tarilishi kerak.
Humm, yomon emas, lekin u yanada yuqoriga ko'tarilishi mumkin; ota-ona veb-sayti, codedoodles.xyz 100 ball oldi, shuning uchun bu kerak. Men takliflar uchun ChatGPT yoki DeepSeek-dan so'ragan bo'lardim, lekin kuting, menda bir afzallik bor — kodni 100 qilishini bilish uchun codedoodles.xyz kodini tekshirishim mumkin.
Opengraph? Bajarildi.
Twitter kartasi? Bajarildi.
Sxema belgisi? Shuningdek bajarildi.
Yana nima! Keyin yana bir nechta kalit so'zlarni qo'shishga ruxsat bering.
Hali ham xuddi shunday.
Ha, men tasvirlar uchun "alt" tavsiflarini o'tkazib yuborgan bo'lsam kerak.
Yo'q, men ham qo'shdim. Dang, men qanchalik ahmoq bo'lishim mumkin? Lighthouse hisobotining o'zi tafsilotlarni ko'rsatadi.
robots.txt fayli muammo. Codedoodles.xyz va chenuli.codedoodles.xyz veb-saytlari bir xil tuzilmadan foydalanadi, shuning uchun men nusxa ko'chirish va joylashtirish ishlarini bajarishim kerak. Yana.
Xuddi eski yaxshi kunlar kabi.
Ha! Hozir 100.
Va shunday bo'lishi kerak. Tovarni loyihalashning AI chatbotlari bilan hech qanday aloqasi yo'q va men bu ishdan omon qoldim. Kitob o'qish vaqti, ajoyib dasturchi!
AIsiz ahmoq, nochor dasturchi bo'lish haqidagi taxminim yolg'on edi va men bundan xursandman. Garchi mening tanqidiy fikrlashim ta'sir qilgan bo'lsa ham (men bir nechta soqov xatolarga yo'l qo'yganman), men hali ham ishlarni bajara olaman. Butun jarayon odatdagidan ko'proq vaqt talab qildi - ayniqsa o'sha skript skriptini yozish - lekin bu yanada foydaliroq tuyuldi. Garajda eski velosipedingizni topib, uni qanday haydashni unutmaganingizni anglagandek.
Va, albatta, men ChatGPT-ni bir necha marta beixtiyor ochdim va ha, googling va nusxa ko'chirish/joylashtirish biroz aybdordek tuyuldi. Ammo 2022 yilgacha biz shunday kodlashdik, to'g'rimi? Stack Overflow va hujjatlar bizning eng yaxshi do'stlarimiz edi va ular hali ham juda yaxshi ishlaydi.
Asosiy narsa shundaki, AI vositalaridan foydalanish juda yaxshi va tushunarli. Ammo vaqti-vaqti bilan men qilgan ishimni qiling: o'sha LLMlarni bloklang va ishni o'zingiz bajarishga harakat qiling. O'zingizni ajoyib his qilasiz, ishoning.
Iltimos, Reddit-da bu odamga o'xshamang. Miyangizni ishlating.