为了账号安全,请及时绑定邮箱和手机立即绑定

有没有一种简单的方法可以从文本文件读取行到这个漂亮的 soup lib python 脚本?

有没有一种简单的方法可以从文本文件读取行到这个漂亮的 soup lib python 脚本?

千巷猫影 2023-05-09 10:05:08
如何将 txt.file 中的行读入此脚本,而不必在脚本中列出 url?谢谢from bs4 import BeautifulSoupimport requestsurl = "http://www.url1.com"response = requests.get(url)data = response.textsoup = BeautifulSoup(data, 'html.parser')categories = soup.find_all("a", {"class":'navlabellink nvoffset nnormal'})for category in categories:    print(url + "," + category.text)我的 text.file 内容有换行符分隔符:http://www.url1.comhttp://www.url2.comhttp://www.url3.comhttp://www.url4.comhttp://www.url5.comhttp://www.url6.comhttp://www.url7.comhttp://www.url8.comhttp://www.url9.com
查看完整描述

3 回答

?
千万里不及你

TA贡献1784条经验 获得超9个赞

要从中读取 URL a.txt,您可以使用此脚本:


import requests

from bs4 import BeautifulSoup



with open('a.txt', 'r') as f_in:

    for line in map(str.strip, f_in):

        if not line:

            continue


        response = requests.get(line)

        data = response.text

        soup = BeautifulSoup(data, 'html.parser')

        categories = soup.find_all("a", {"class":'navlabellink nvoffset nnormal'})


        for category in categories:

            print(url + "," + category.text)


查看完整回答
反对 回复 2023-05-09
?
郎朗坤

TA贡献1921条经验 获得超9个赞

file1 = open('text.file', 'r') 

Lines = file1.readlines() 


count = 0

# Strips the newline character 

for line in Lines: 

    print("Line{}: {}".format(count, line.strip())) 

你只需用 url 变量替换你的行


查看完整回答
反对 回复 2023-05-09
?
不负相思意

TA贡献1777条经验 获得超10个赞

为了这个例子,假设您的文件名为urls.txt. 在 Python 中,打开文件并读取其内容非常容易。


with open('urls.txt', 'r') as f:

    urls = f.read().splitlines()

#Your list of URLs is now in the urls list!

after只是告诉 Python 以'r'阅读'urls.txt'模式打开文件。如果您不需要修改文件,最好以只读模式打开它。f.read() 返回文件的全部内容,但它包含换行符 ( \n),因此splitlines()将删除这些字符并为您创建一个列表。


查看完整回答
反对 回复 2023-05-09
  • 3 回答
  • 0 关注
  • 106 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信