Nguyễn Ngọc Khánh
Python System
05/09/2021
Python – tìm kiếm goolge tự động

Hi các bạn,

Hôm nay ngồi rảnh mình viết 1 chương trình tự động truy cập vào google và search với từ khoá cho trước.

Yêu cầu:

  • Python 3.6
  • Selenium

Code mẫu của mình như sau:

import time
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.common.exceptions import TimeoutException
 
 
def init_driver():
    driver = webdriver.Firefox()
    driver.wait = WebDriverWait(driver, 5)
    return driver
 
 
def lookup(driver, query):
    driver.get("http://www.google.com")
    try:
        box = driver.wait.until(EC.presence_of_element_located(
            (By.NAME, "q")))
        button = driver.wait.until(EC.element_to_be_clickable(
            (By.NAME, "btnK")))
        box.send_keys(query)
        button.click()
    except TimeoutException:
        print("Box or Button not found in google.com")
 
 
if __name__ == "__main__":
    driver = init_driver()
    lookup(driver, "Python Viet Nam")
    time.sleep(5)
    driver.quit()

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

Xem tiếp
Nguyễn Ngọc Khánh
Python System
05/09/2021
Sử dụng paramiko để check máy chủ

Chào các bạn,

Để check thông tin một máy chủ, các bạn thường ssh đến và check các thông số theo ý muốn, việc này đơn giản nhưng số lượng máy chủ càng lớn, công việc càng nhàm. Để giải quyết việc này các bạn hoàn toàn có thể sử dụng chương trình tự động. Ví dụ dưới đây để làm việc đó.

import paramiko
import time
 
 
def disable_paging(remote_conn):
    '''KhanhNN'''
 
    remote_conn.send("terminal length 0\n")
    time.sleep(1)
    output = remote_conn.recv(1000)
    return output
if __name__ == '__main__':
    ip = '192.168.0.36'
    username = 'khanhnnvn'
    password = '1111111'
    remote_conn_pre = paramiko.SSHClient()
    remote_conn_pre.set_missing_host_key_policy(
        paramiko.AutoAddPolicy())
    remote_conn_pre.connect(ip, username=username, password=password, look_for_keys=False, allow_agent=False)
    print "SSH connection established to %s" % ip
    remote_conn = remote_conn_pre.invoke_shell()
    print "Interactive SSH session established"
    output = remote_conn.recv(1000)
    print output
    disable_paging(remote_conn)
    remote_conn.send("\n")
    remote_conn.send("df -h\n")
    remote_conn.send("service --status-all | grep running\n")
    time.sleep(2)
    output = remote_conn.recv(5000)
    print output

Sau khi chạy ta có thông tin như sau:

alt text

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

Xem tiếp
Nguyễn Ngọc Khánh
Python System
05/09/2021
Check IP spam list

Hi bà con,

Hôm nay Hà Nội lạnh, vừa đến cơ quan tránh lạnh thì nghe tin Email liệt vào Spam list. Ngồi check bằng tay lâu quá nên tìm một đoạn tự động check. Share bà con coi thử nhé.

#check email spam 25-01-2016
import dns.resolver
import sys
#danh sach cac ong
bls = ["zen.spamhaus.org", "spam.abuse.ch", "cbl.abuseat.org", "virbl.dnsbl.bit.nl", "dnsbl.inps.de",
    "ix.dnsbl.manitu.net", "dnsbl.sorbs.net", "bl.spamcannibal.org", "bl.spamcop.net",
    "xbl.spamhaus.org", "pbl.spamhaus.org", "dnsbl-1.uceprotect.net", "dnsbl-2.uceprotect.net",
    "dnsbl-3.uceprotect.net", "db.wpbl.info"]
 
if len(sys.argv) != 2:
    print 'Usage: %s <ip>' %(sys.argv[0])
    quit()
 
myIP = sys.argv[1]
 
for bl in bls:
    try:
        my_resolver = dns.resolver.Resolver()
        query = '.'.join(reversed(str(myIP).split("."))) + "." + bl
        answers = my_resolver.query(query, "A")
        answer_txt = my_resolver.query(query, "TXT")
        print 'IP: %s IS listed in %s (%s: %s)' %(myIP, bl, answers[0], answer_txt[0])
    except dns.resolver.NXDOMAIN:
        print 'IP: %s is NOT listed in %s' %(myIP, bl)

alt text

Demo phát


Chúc bạn thành công!

Xem tiếp

Press ESC to close