Google là công cụ tìm kiếm lớn nhất trong số tất cả các công cụ tìm kiếm khi nói đến việc tìm kiếm thông tin trên Internet. Theo ước tính, hơn 3,5 tỷ lượt tìm kiếm được thực hiện trên Google Tìm kiếm mỗi ngày. Chúng tôi (người dùng Google) chỉ được cung cấp một lượng thông tin nhất định dựa trên Google Analytics và Google Ads. Google sử dụng API của mình
Google là công cụ tìm kiếm lớn nhất trong số tất cả các công cụ tìm kiếm khi nói đến việc tìm kiếm thông tin trên Internet. Theo ước tính, hơn 3,5 tỷ lượt tìm kiếm được thực hiện trên Google Tìm kiếm mỗi ngày. Chúng tôi (người dùng Google) chỉ được cung cấp một lượng thông tin nhất định dựa trên Google Analytics và Google Ads. Google sử dụng API (Giao diện lập trình ứng dụng) của mình và về cơ bản chọn thông tin có giá trị nhất đối với chúng tôi dựa trên nghiên cứu và xếp hạng của mình. Nhưng nếu chúng ta muốn đào sâu hơn một chút để biết thông tin nào thực sự có giá trị đối với bạn thì sao?
Đây là lúc cần phải thu thập dữ liệu. Bạn có thể nghĩ đến Google Scraper như một cách để làm nổi bật các chương quan trọng nhất của một cuốn sách. Khi bạn quét một cuốn sách giáo khoa để tìm thông tin, bạn có xu hướng chọn ra văn bản có giá trị nhất cho nghiên cứu hoặc bài kiểm tra của mình. Nhưng World Wide Web lớn hơn một cuốn sách 1000 trang. Vì vậy, trong trường hợp của Internet, Google Scraper có thể là đôi mắt tập trung của bạn, ngay lập tức nắm bắt và thu thập các kết quả hàng đầu về chủ đề mà bạn thắc mắc. Bạn có thể trích xuất kết quả tìm kiếm của Google dựa trên các từ khóa cụ thể. Ví dụ: nếu bạn thu thập dữ liệu trên Google bằng từ khóa "lions", Google Web Scraper sẽ cung cấp cho bạn một số lượng URL được xếp hạng cao nhất dựa trên từ khóa đó. Bạn sử dụng càng nhiều từ khóa, Google sẽ cung cấp cho bạn nhiều URL và dữ liệu cụ thể hơn. Dữ liệu càng cụ thể thì dữ liệu đó càng phù hợp với yêu cầu của bạn. Nhưng trước tiên, hãy cùng tìm hiểu nhu cầu thu thập dữ liệu trên Google.
Bạn biết rằng Google là điểm vào chính của Internet đối với hàng tỷ người và hầu như mọi doanh nghiệp đều muốn xuất hiện trong kết quả Tìm kiếm của Google. Xếp hạng và đánh giá của Google có tác động lớn đến hồ sơ trực tuyến của các doanh nghiệp địa phương. Các công ty tiếp thị có nhiều khách hàng từ các ngành khác nhau phụ thuộc rất nhiều vào việc có được các công cụ SEO (Tối ưu hóa công cụ tìm kiếm) đáng tin cậy. Chúng là phương tiện để thực hiện nhiều nhiệm vụ một cách hiệu quả và là phương tiện để quản lý và phân tích kết quả thành công.
Sau đây là một số trường hợp sử dụng dữ liệu từ Google.
Các doanh nghiệp cần thu thập thông tin từ Google vì những lý do sau.
Hãy cùng xem chúng ta có thể thu thập dữ liệu từ Google bằng python như thế nào.
Đầu tiên, bạn cần cài đặt fake-useragent . Nó sẽ lấy useragent mới nhất với cơ sở dữ liệu thực tế.
pip cài đặt fake-useragent
Bạn phải nhập tất cả các thư viện cần thiết như được hiển thị bên dưới.
nhập pandas dưới dạng pd nhập numpy dưới dạng np nhập urllib từ fake_useragent nhập UserAgent nhập yêu cầu nhập re từ urllib.request nhập Request, urlopen từ bs4 nhập BeautifulSoup
Bạn phải xây dựng URL Google bằng cách sử dụng từ khóa của bạn và số lượng kết quả. Để thực hiện việc này, chúng ta sẽ làm theo hai bước:
Mã hóa từ khóa thành HTML bằng urllibThêm id vào URL
Chúng tôi cho rằng từ khóa của chúng tôi là “máy học python”.
từ khóa= "học máy python" html_keyword= urllib .parse .quote_plus (từ khóa) in (html_keyword)
Khi in ra từ khóa, chúng ta sẽ nhận được kết quả sau.
Sau khi mã hóa từ khóa thành HTML bằng urllib, chúng ta phải xây dựng URL Google như hiển thị bên dưới.
số_kết_quả = 15 google_url = "https://www.google.com/search?q=" + html_keyword + "&num=" + str ( số_kết_quả ) in ( google_url )
Chúng ta nhận được URL sau:
Bây giờ, chúng ta phải nhấn vào URL và lấy kết quả. Để đạt được điều này, Beautiful Soup và Fake Useragent sẽ giúp chúng ta thực hiện.
ua = UserAgent()
response = requests.get(google_url, {"User-Agent": ua.random})
soup = BeautifulSoup(response.text, "html.parser")
Chúng ta chỉ cần biểu thức chính quy để trích xuất thông tin chúng ta muốn.
result = soup.find_all('div', attrs = {'class': 'ZINbbc'})
results=[re.search('\/url\?q\=(.*)\&sa',str(i.find('a', href = True)['href'])) for i in result if "url" in str(i)]
#this is because in rare cases we can't get the urls
links=[i.group(1) for i in results if i != None]
links
Đây là những gì chúng ta nhận được.
Đây là cách bạn có thể thu thập dữ liệu từ Google bằng Python.
Chúng ta cũng có thể tóm tắt đoạn mã trên thành một hàm scraper duy nhất, như được hiển thị bên dưới.
def google_results(keyword, n_results):
query = keyword
query = urllib.parse.quote_plus(query) # Format into URL encoding
number_result = n_results
ua = UserAgent()
google_url = "https://www.google.com/search?q=" + query + "&num=" + str(number_result)
response = requests.get(google_url, {"User-Agent": ua.random})
soup = BeautifulSoup(response.text, "html.parser")
result = soup.find_all('div', attrs = {'class': 'ZINbbc'})
results=[re.search('\/url\?q\=(.*)\&sa',str(i.find('a', href = True)['href'])) for i in result if "url" in str(i)]
links=[i.group(1) for i in results if i != None]
return (links)
Ở đây google_results là hàm thu thập dữ liệu trong đó chúng ta truyền từ khóa và số lượng kết quả dưới dạng tham số và xây dựng URL Google.
google_results ( 'học máy trong python' , 10 )
Đây là những gì chúng ta nhận được.
Nếu bạn muốn kết nối với Google Ads API thì sao? Bạn có thể thực hiện việc này thông qua proxy bằng cách thiết lập cấu hình http_proxy trong tệp google-ads.yaml của bạn như hiển thị bên dưới.
http_proxy: CHÈN_PROXY_TẠI ĐÂY
Bạn có thể chỉ định http://user:pass@localhost:8082 làm proxy. Bạn cũng có thể cấu hình cài đặt proxy theo chương trình với sự trợ giúp của các phương thức GoogleAdsClient như sau:
Ví dụ,
config = {
...
"http_proxy": "INSERT_PROXY_HERE",
}
googleads_client = GoogleAdsClient.load_from_dict(config)
Bạn phải thiết lập biến môi trường GOOGLE_ADS_HTTP_PROXY để sử dụng proxy từ phương thức load_from_env.
Sau đây là những lý do nên sử dụng proxy của Google.
Bạn có thể thu thập dữ liệu từ Google bằng Python để:
Khi thu thập dữ liệu từ Google, proxy là cần thiết vì chúng có thể giúp các công ty tăng thứ hạng trên các công cụ tìm kiếm và ngăn chặn IP Internet của họ bị chặn. Bạn có thể sử dụng toàn bộ một loạt proxy chuyên dụng để thu thập dữ liệu từ Google và chúng giúp bạn lấy dữ liệu cực kỳ nhanh.
Hy vọng bạn đã hiểu cách thu thập dữ liệu từ Google bằng Python.