Lập trình viên thì nên hạn chế sử dụng chuột :D đang sài cmd mà cứ phải chuyển tab qua trình duyệt để tìm kiếm thì "mệt" quá, nhất là những vẫn đề chỉ cần xem ví dụ là hiểu hoặc chỉ cần liếc sơ qua google là được, thì làm ngay trên cmd là quá tiện. Mình mới viết cái script trên python 2.7 để "google".
Có một số lỗi nhỏ nhưng không ảnh hưởng gì, lần sau có cập nhật thì mình sẽ tìm cách sửa luôn và update thêm tính năng qua trang và truy cập link, cũng đơn giản nhưng đang bận quá :D đồng thời thêm một số option.
Các bạn có thể build thành exe và tạo biến môi trường cho nó, mình thì build thành
go.exe, giờ chỉ cần "go Vu Ngoc Minh Hoang" là xong. Rất tiện.
Trên terminal cũng tương tự.
---------------------------
# -*- coding: utf8 -*-
# Dev: Vu Ngoc Minh Hoang
# Public: 19-08-2015
# Version: 1.0
# Example: go Vu Ngoc Minh Hoang
from urllib2 import urlopen
from urllib2 import HTTPError
import urllib2
import sys
import re
import string
def mergerURL():
url = 'https://www.google.com/search?q='
for i in range(1,len(sys.argv)):
url = url + str(sys.argv[i]) + '+'
return url
if __name__ == '__main__':
#fake the mozilla headers
header = {'User-Agent' : 'Mozilla/5.0 (X11; U; Linux i686; en-US)AppleWebKit/533.2(KHTML, like Gecko) Chrome/5.0.342.7 Safari/533.2'}
#merger url
url = mergerURL()
#make request
req = urllib2.Request(url, headers=header)
#creat streamreader
try:
fpage = urlopen(req);
except HTTPError, e:
print "Error: ", e.code, e.reason
print "Read data complete"
#regex
ftitle = re.compile(r'<!--m-->.*?\)">(.*?)</a></h3>.*?<!--n-->')
flink = re.compile(r'<h3 class="r"><a href="(.*?)"')
fcontent = re.compile(r'<span class="st">(.*?)</span><')
###ftitle = re.compile(r'<!--m-->(.*?)<!--n-->')
#fix content
fix = re.compile('(<em>)|(</em>)|( )|(</span>)|(<span class="f">)|(<wbr>)')
while True:
lnk = fpage.readline();
#print lnk
if not lnk:
break
else:
rtitle = ftitle.findall(lnk)
rlink = flink.findall(lnk)
rcontent = fcontent.findall(lnk)
if rtitle:
for i in range(len(rtitle)):
print u"[*]", rtitle[i],'\n|', rlink[i], '\n|', fix.sub('',rcontent[i]), '\n'
fpage.close()
#Mình đã update một số option và ngôn ngữ tiếng việt, trên cmd có vẻ như không hiển thị được tiếng việt, tạm thời sử dụng trên powershell nhé :D nhớ chọn font Consolas để hỗ trợ unicode
#Lần update tiếp theo không biết làm gì nhỉ? Truy cập link?
#Mình đã update phần setup cho nó, có vẻ hơi khó chịu khi nó đòi chạy với quyền Admin, nhưng để mình tìm cách fix đã
Chờ feedback của các bạn, các update mới nhất đều có trên github
Link GitHub: https://github.com/RokHoang/Google