我找到了一个教程,我正在尝试运行此脚本,之前我没有使用python。 tutorial
我已经看到通过logging.debug运行的内容,检查它是否连接到Google并尝试使用其他脚本创建csv文件
from urllib.parse import urlencode, urlparse, parse_qs
from lxml.html import fromstring
from requests import get
import csv
def scrape_run():
with open('/Users/Work/Desktop/searches.txt') as searches:
for search in searches:
userQuery = search
raw = get("https://www.google.com/search?q=" + userQuery).text
page = fromstring(raw)
links = page.cssselect('.r a')
csvfile = '/Users/Work/Desktop/data.csv'
for row in links:
raw_url = row.get('href')
title = row.text_content()
if raw_url.startswith("/url?"):
url = parse_qs(urlparse(raw_url).query)['q']
csvRow = [userQuery, url[0], title]
with open(csvfile, 'a') as data:
writer = csv.writer(data)
writer.writerow(csvRow)
print(links)
scrape_run()
此脚本的TL; DR具有三个基本功能:
答案 0 :(得分:0)
假设links
变量已满并且包含数据-请验证。
如果为空-测试您正在进行的api调用本身,也许返回的结果与您预期的不同。
除此之外-我认为您只需要调整一点文件处理即可。
https://www.guru99.com/reading-and-writing-files-in-python.html 在这里,您可以找到有关python中文件处理的一些准则。 以我的观点,您需要确保先创建文件。 从能够创建文件的脚本开始。 之后,增强脚本以能够写入并附加到文件。 从那以后,我认为您很好,可以继续执行脚本。 除此之外,我认为您宁愿只打开文件一次而不是每个循环,这可能意味着执行时间要快得多。
让我知道是否不清楚。
答案 1 :(得分:0)
已解决 谷歌添加验证码我经常使用 我使用移动互联网时的工作