从CSV中的列表创建Python中多个URL的列表

从CSV中的列表创建Python中多个URL的列表,python,list,csv,python-requests,Python,List,Csv,Python Requests,我有一个包含335个基因访问号码的csv列表,我想把它们全部放在一个特定的URL中: 其中,每个URL中的8个字母的基因访问号(上面的DQ147858)与相应的csv列表不同 然后我还需要知道如何通过请求访问所有生成的URL 非常感谢您的帮助。csv=open('PATH\u TO\u csv','r')) 对于csv.readlines()中的基因_编号。拆分(','): URL='1〕https://www.ncbi.nlm.nih.gov/nuccore/“+基因编号+”.1?报告=fa

我有一个包含335个基因访问号码的csv列表,我想把它们全部放在一个特定的URL中:

其中,每个URL中的8个字母的基因访问号(上面的DQ147858)与相应的csv列表不同

然后我还需要知道如何通过请求访问所有生成的URL

非常感谢您的帮助。

csv=open('PATH\u TO\u csv','r'))
对于csv.readlines()中的基因_编号。拆分(','):
URL='1〕https://www.ncbi.nlm.nih.gov/nuccore/“+基因编号+”.1?报告=fasta”

//此处请求解析

您可以使用以下方法概括url创建:

def build_url(gene):
    return 'https://www.ncbi.nlm.nih.gov/nuccore/' + gene + '.1?report=fasta'
然后,要为每个
基因构建
,您可以迭代初始列表,并为每个基因应用函数
build\u url

# Generic extraction of list genes from csv
genes = extract_list(csv)

# Using list comprehension
genes_urls = [build_url(gene) for gene in genes]

# Using regular for
genes_urls = []
for gene in genes:
    genes_urls.append(build_url(gene))
接下来,要提出请求,您只需执行以下操作:

import requests

# Using list comprehension
res = [requests.get(url) for url in genes_urls]

# Using regular for
res = []
for url in genes_urls:
    res.append(requests.get(url))

此外,您还可以使用以下方法加快请求的速度。

要读取.csv,我使用以下方法:

result = []
for line in open("file.csv"):
    result.append(line.split(','))
这将为您提供逗号之间每个元素的列表。我不知道您需要哪些se元素,但请查看
result[0]
以了解您需要哪个索引

有了你需要的索引

fmtstr  = "https://www.ncbi.nlm.nih.gov/nuccore/{}?report=fasta"
urls = []
for lst in result:
    urls.append(fmtstr.format( lst[desired_index] ))
然后,您可以遍历URL列表,并根据需要使用请求库


这并不是最简洁的方式,但它很实用,并将各个步骤分开以便于查看。

此网站不是编码服务,请自行尝试,当你遇到一个特定的问题时,请毫不犹豫地在这里提问。如果你需要使用多光标编辑器将CVS文件修改为所需的URL,然后使用wget或curl获取它们。或者在编辑器中使用正则表达式将CVS中的每一行转换为所需的URL