我有两段代码一段python的一段go代码想要把python代码中的功能加到go里面去下面的go的代码:package mainimport errors fmt neturl os strconv githubcomlogrusorgruaurorav3 log githubcomprojectdiscoverygologgerfunc isStdin bool f e = osStdinS
将Python代码中获取Google搜索结果的部分加入到Go代码中的search()函数中,可以参考以下步骤:
- 引入必要的Python库:
import requests
from bs4 import BeautifulSoup
- 将Python代码中获取Google搜索结果的部分封装成一个函数:
def get_google_results(query):
random_domain = random.choice(domains)
url = f'https://www.google.{random_domain}/search?q={query}&num=100'
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'}
response = requests.get(url, headers=headers)
soup = BeautifulSoup(response.text, 'html.parser')
results = soup.find_all('div', class_='g')
urls = []
for r in results:
link = r.find('a')
if link:
href = link.get('href')
if 'url?q=' in href:
urls.append(href.split('url?q=')[1].split('&sa=')[0])
return urls
- 在search()函数中根据opt.Engine选择相应的搜索引擎,并调用get_google_results()函数获取Google搜索结果:
func (opt *options) search() (bool, error) {
// ...
switch opt.Engine {
case "google":
query := url.QueryEscape(opt.Query)
urls := get_google_results(query)
for _, url := range urls {
fmt.Printf("%s\n", url)
}
return false, nil
// ...
}
// ...
}
``
原文地址: https://www.cveoy.top/t/topic/g9f5 著作权归作者所有。请勿转载和采集!