کیا حامدی

در این ویدیوکست برای سایت دیوار یک اسکریپت آلارم برای آگهی ها مینویسیم و یک پروژه متن باز رو استارت میزنیم که در کنار هم توسعه بدیم

 

لینک پروژه در گیت هاب:

https://github.com/kiahamedi/DivarAlarm

سورس کد برنامه در نسخه فعلی:

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
Created on Sun Dec 29 00:47:36 2019
@author: kia
"""

from bs4 import BeautifulSoup
import requests
import time
from os import system

maxEj = 500000
maxVa = 20000000
url = "https://divar.ir/s/urmia/rent-residential"



while True:
    page = requests.get(url)
    soup = BeautifulSoup(page.content,'html5lib')
    firstElement = soup.find('a',{"class":"col-xs-12 col-sm-6 col-xl-4 p-tb-large p-lr-gutter post-card"})
    vadie = firstElement.find('div',{"class":"body-12 post-card__description"})
    itemsArray = vadie.text.split('\n')
    
    vadie = int(itemsArray[0].replace("تومان","").replace("ودیعه:","").strip().replace(",",""))
    ejare = int(itemsArray[1].replace("تومان","").replace("اجاره ماهیانه:","").strip().replace(",",""))
    titleAD = firstElement.find('div',{"class":"subtitle-16 post-card__title"}).text
    urlAD = "https://divar.ir"+firstElement['href']

    rfile =  open("lastItem.txt","r")
    lastItem = rfile.read()
    
    if lastItem == titleAD:
        print("sleep for 10 second")
        time.sleep(10)
        continue
    else:
        file = open("lastItem.txt","w+")
        file.write(titleAD)
        file.close()
        print("ALAAAAARM")
        system("notify-send 'Divar Alarm'")
        system('cvlc /home/kia/Music/coindrop.wav& sleep 2 && killall vlc')
        system('firefox '+urlAD)
        break
 

خوشحال میشم دوستانی که توانایی وقت بیکاری و علاقه به فعالیت های متن باز دارند در پروژه مشارکت کنند و زمان بیکاری خودمون رو با این پروژه پر کنیم

10 Comments

  1. حامد عزیز، اگر با زبان php بود همین الان برای توسعه و همکاری با تو شروع می کردم. اما متاسفانه پایتون کار نکردم 🙁

  2. سلام کیا جان.

    من یه تغییراتی دادم . فقط اولین بارم بود با سیستم گیت هاب کار میکردم . نمیدونم درست انجام دادم یا خراب کاری شد؟ 🙂

    1. سلام ممنون ازتون واقعا جای خوشحالیه
      متاسفانه واسه من نیومده
      باید از پروژه ای که فورک کردید بعد از انجام تغییرات درخواست پول ریکوست برای مرج برنچی که ایجاد کردید (یا برنچ مستر) خوب با برنچ مستر من بدید تا برای من بیاد تغییراتی که انجام دادید

  3. سلام آقا گیا من یه ایمیل براتون فرستادم ک درخواست سفارش دارم ممنون میشم اگ جواب بدید

  4. با سلام. من میخوام متن مربوط به توضیحات هر آگهی داشته باشم ولی از هم روشی استفاده میکنم نمیشه. اگه ممکنه راهنمایی بفرمایید.

    1. با سلام و احترام
      با پوزش برای دیر جواب دادن
      سایت دیوار از کلاس های داینامیک استفاده میکنه که نشه راحت اسکرپش کرد ساده ترین راه استفاده از XPATH هست یا مسیر رسیدن به توضیحات رو به صورتی دستی و بر اساس المان نوع دیو یا پاراگراف پیدا کنید و بهش برسید

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *