1 import requests
2 from bs4 import BeautifulSoup
3 import pandas as pd
4 from openpyxl import Workbook
5 import concurrent.futures
6
7 # 读取 .txt 文件中的 URL
8 with open("urls.txt", "r") as file:
9 urls = file.read().splitlines()
10
11 # 存储 URL 和 title
12 data = []
13
14 def fetch_title(url):
15 response = requests.get(url)
16 soup = BeautifulSoup(response.text, "html.parser")
17 title = soup.find("title").text
18 return (url, title)
19
20 with concurrent.futures.ThreadPoolExecutor(max_workers=20) as executor:
21 futures = [executor.submit(fetch_title, url) for url in urls]
22
23 for future in concurrent.futures.as_completed(futures):
24 result = future.result()
25 data.append(result)
26
27 # 将 URL 和 title 写入 Excel 文件
28 df = pd.DataFrame(data, columns=["URL", "Title"])
29
30 book = Workbook()
31 writer = pd.ExcelWriter("titles.xlsx", engine="openpyxl")
32 writer.book = book
33
34 df.to_excel(writer, index=False)
35
36 writer.save()
37   由于是最后一起写入到excel,所以单次URL获取不宜过多

批量获取title的更多相关文章

  1. 06_Elasticsearch 批量获取mget

    06_Elasticsearch 批量获取mget 现在有: http://192.168.32.81:9200/bank/bank_account/1 http://192.168.32.81:92 ...

  2. 谷歌、腾讯、百度相应API批量获取地理位置坐标信息及其优缺点

    目录: 申请ak 批量获取地理位置 目的:通过给定的地理位置名称(如:北京市海淀区上地十街十号),获取经纬度信息. 1.申请ak 以百度Geocoding API为例:http://lbsyun.ba ...

  3. Python3.x:免费代理ip的批量获取并入库

    Python3.x:免费代理ip的批量获取并入库 一.简介 网络爬虫的世界,向来都是一场精彩的攻防战.现在许多网站的反爬虫机制在不断的完善,其中最令人头疼的,莫过于直接封锁你的ip.但是道高一尺魔高一 ...

  4. JS批量获取参数构建JSON参数对象

    在做系统的时候,往往查询条件是被严格指定的,大量的查询条件,一两个页面还可以通过dom去一个一个获取,再构建参数对象,请求后台接口. 这里给大家讲一个批量获取前端参数,构建参数对象. <form ...

  5. sql 根据指定条件获取一个字段批量获取数据插入另外一张表字段中+MD5加密

    /****** Object: StoredProcedure [dbo].[getSplitValue] Script Date: 03/13/2014 13:58:12 ******/ SET A ...

  6. PHP 批量获取指定目录下的文件列表(递归,穿透所有子目录)

    //调用 $dir = '/Users/xxx/www'; $exceptFolders = array('view','test'); $exceptFiles = array('BaseContr ...

  7. 批量获取oracle的表和表字段注释【原】

    批量获取oracle的表和表字段注释 --用户表注释表 SELECT * FROM USER_TAB_COMMENTS WHERE TABLE_NAME LIKE 'WEB_ISC_%'; --显示指 ...

  8. 【Python项目】简单爬虫批量获取资源网站的下载链接

    简单爬虫批量获取资源网站的下载链接 项目链接:https://github.com/RealIvyWong/GotDownloadURL 1 由来 自己在收集剧集资源的时候,这些网站的下载链接还要手动 ...

  9. 如何从统计中批量获取BD搜索关键词及对应的入口页面?

    前面我们介绍了通过cnzz的访问明细获取到搜索关键词及对应的入口页面,但是从BD搜索进来的关键词无法完整显示,只能呈现一些bd图片搜索的关键词,这是因为百度宣布从去年5月开始逐渐取消了referer关 ...

  10. C#开发BIMFACE系列14 服务端API之批量获取转换状态详情

    系列目录     [已更新最新开发文章,点击查看详细] 上一篇<C#开发BIMFACE系列13 服务端API之获取转换状态>中介绍了根据文件ID查询单个文件的转换状态. 本文介绍批量获取转 ...

随机推荐

  1. 00-DLL劫持&C语言远程加载shellcode

    0x01 杀软拦截检测规则引导-DLL劫持上线 准备工具 cs vs2019 dll劫持工具:https://bbs.pediy.com/thread-224408.htm 极速PDF:https:/ ...

  2. 【KAWAKO】RNNoise-将模型做成接口并交叉编译到RK3308上

    目录 做成接口 rnnoise_inference.h rnnoise_inference.cpp 使用方法(主要部分) 交叉编译 编译出动态链接库 使用编译出的动态链接库进行推理 做成接口 RNNo ...

  3. async异步编程屏蔽凡人

    为提高效率与增加逼格,墙裂建议引入async异步编程,这不比基于threading的线程.基于multiprocessing的进程香?这些大家伙太重量级了,代码又啰里啰唆的一点也不pythonic,只 ...

  4. Can not use keyword ‘await’ outside an async function

  5. centos7 开机自启动脚本

    两种实现方式 方法1:(rc.local) 1.因为在centos中/etc/rc.d/rc.local的权限被降低了,所以需要赋予其可执行权 chmod +x /etc/rc.d/rc.local ...

  6. HTML+css图片轮播

    <div class="pst"> <div class="pin"> <div style="background-i ...

  7. VScode中文乱码问题

    参考链接 https://blog.csdn.net/weixin_40040107/article/details/103721554?utm_medium=distribute.pc_releva ...

  8. DataGridView添加新一行数据可添加到最后一行或第一行

    整体代码如下: using System;using System.Collections.Generic;using System.ComponentModel;using System.Data; ...

  9. NSIS 制作漂亮的安装界面(仿QQ音乐,网易云音乐)

    废话少说,先上图: 注:下面的录制的安装过程使用的安装包,均为制作的安装包,而非官方源包. QQ音乐的安装过程: ​

  10. csp201503-1(矩阵逆时针九十度旋转)

    //矩阵变换的题,要找出两个矩阵各元素横纵坐标之间的关系 #include<bits/stdc++.h> using namespace std; int main() { int a[1 ...