如何使用python在URL中插入变量值



我想从文件中读取"csv"包含关键字并将其插入URL: https://google.comhttps://www.google.com/search?q=**Exapmle**
所以我可以通过谷歌搜索,得到结果与我的循环,例如,我有5个关键字在这个文件:csv_2023.csv,这意味着我应该发送5个请求,并得到5个响应这是我的代码:

import re
import requests
import csv
with open("./csv_2023.csv", 'r') as file:
csvreader = csv.reader(file)
for row in csvreader:

url = f'https://www.google.com/search?q=csvreader'
headers = {
'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/111.0.0.0 Safari/537.36'
}
regex_pattern = 'PDF'
result = requests.get(url, headers=headers)
match = re.findall(regex_pattern, result.text) 
print(match)

我用了"f">

使用paramsrequests.get()选项指定URL参数

import re
import requests
import csv
url = f'https://www.google.com/search'
headers = {
'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/111.0.0.0 Safari/537.36'
}
regex_pattern = 'PDF'
with open("./csv_2023.csv", 'r') as file:
csvreader = csv.reader(file)
for row in csvreader:        
result = requests.get(url, headers=headers, params={"q": row[0]})
match = re.findall(regex_pattern, result.text) 
print(match)

python中使用f- string的正确方法如下:f'abc{3**2}'=>这将被解释为abc9。所以,在你的例子中:

import re
import requests
import csv
with open("./csv_2023.csv", 'r') as file:
csvreader = csv.reader(file)
for row in csvreader:
url = f'https://www.google.com/search?q={row}'
regex_pattern = 'PDF'
result = requests.get(url, headers=headers)
match = re.findall(regex_pattern, result.text) 
print(match)

最新更新