求助-爬取天眼查上包含特定关键字的 所有的公司的名称对应的联系方式

本文主要是介绍求助-爬取天眼查上包含特定关键字的 所有的公司的名称对应的联系方式,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

把chat GPT 生成的自己的cookie

import requests
import pandas as pd
from lxml import etreeheaders = {"Accept":"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7","Accept-Encoding":"gzip, deflate, br","Accept-Language":"zh-CN,zh;q=0.9","Cache-Control":"max-age=0","Connection":"keep-alive","Cookie":"TYCID=cd3d5790932011ee882895fe7d7a2c87; ssuid=6862026551; bannerFlag=true; _ga=GA1.2.2117757969.1701747960; _gid=GA1.2.1331589730.1701747960; HWWAFSESID=85ca94d5f851ae5a2e9; HWWAFSESTIME=1701755123973; csrfToken=EhED4KLQR4rKmWIy4IBH91iA; Hm_lvt_e92c8d65d92d534b0fc290df538b4758=1701755130; jsid=http%3A%2F%2Fwww.tianyancha.com%2F%3Fjsid%3DSEM-BAIDU-PZ-SY-2021112-BEIJING; tyc-user-info-save-time=1701844372763; searchSessionId=1701845421.29031029; sensorsdata2015jssdkcross=%7B%22distinct_id%22%3A%22297365569%22%2C%22first_id%22%3A%2218c3815267d9da-01b50fa97903052-26031051-2073600-18c3815267e91f%22%2C%22props%22%3A%7B%22%24latest_traffic_source_type%22%3A%22%E7%9B%B4%E6%8E%A5%E6%B5%81%E9%87%8F%22%2C%22%24latest_search_keyword%22%3A%22%E6%9C%AA%E5%8F%96%E5%88%B0%E5%80%BC_%E7%9B%B4%E6%8E%A5%E6%89%93%E5%BC%80%22%2C%22%24latest_referrer%22%3A%22%22%7D%2C%22identities%22%3A%22eyIkaWRlbnRpdHlfY29va2llX2lkIjoiMThjMzgxNTI2N2Q5ZGEtMDFiNTBmYTk3OTAzMDUyLTI2MDMxMDUxLTIwNzM2MDAtMThjMzgxNTI2N2U5MWYiLCIkaWRlbnRpdHlfbG9naW5faWQiOiIyOTczNjU1NjkifQ%3D%3D%22%2C%22history_login_id%22%3A%7B%22name%22%3A%22%24identity_login_id%22%2C%22value%22%3A%22297365569%22%7D%2C%22%24device_id%22%3A%2218c3815267d9da-01b50fa97903052-26031051-2073600-18c3815267e91f%22%7D; Hm_lpvt_e92c8d65d92d534b0fc290df538b4758=1701845422","Host":"www.tianyancha.com","Referer":"https://www.tianyancha.com/?jsid=SEM-BAIDU-PZ-SY-2021112-BEIJING","Sec-Fetch-Dest":"document","Sec-Fetch-Mode":"navigate","Sec-Fetch-Site":"same-origin","Sec-Fetch-User":"?1","Upgrade-Insecure-Requests":"1","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36","sec-ch-ua":"\"Google Chrome\";v=\"119\", \"Chromium\";v=\"119\", \"Not?A_Brand\";v=\"24\"","sec-ch-ua-mobile":"?0","sec-ch-ua-platform":"\"Windows\""
}
url = 'https://www.tianyancha.com/search?key=%E7%BB%A7%E7%BB%AD%E6%95%99%E8%82%B2'
# req=requests.get(url=url,headers=headers).status_code
# print(req)def get_company_info(key):url = "https://www.tianyancha.com/search?key=" + keyres = requests.get(url, headers=headers).textres = etree.HTML(res)result = res.xpath("//a[@class='index_alink__zcia5 link-click']//span")if result:company_url = "https://www.tianyancha.com/company/" + result[0].split("-c")[-1]return company_urlelse:return Nonedef get_company_contact(url):res = requests.get(url, headers=headers).textres = etree.HTML(res)#选取所有class属性为f0的div元素contact_info = res.xpath("//div[@class='f0']//span")[3].textreturn contact_infodef main():keyword = "继续教育"  # 设置你想要的关键字output_data = []# 遍历搜索结果的页面for page in range(0, 250):  # 根据实际的搜索结果页面数量调整范围search_url = f"https://www.tianyancha.com/search/p{page}?key={keyword}"search_res = requests.get(search_url, headers=headers).textsearch_html = etree.HTML(search_res)company_links = search_html.xpath("//div[@class='scroll-list']//a/@href")# 遍历公司链接并获取联系信息for link in company_links:company_url = "https://www.tianyancha.com/company/" + link.split("-c")[-1]contact_info = get_company_contact(company_url)output_data.append({"公司链接": company_url, "联系信息": contact_info})# 将数据转换为DataFrame并保存到Excel文件中df = pd.DataFrame(output_data)df.to_excel("company_contacts.xlsx", index=False)print("数据提取并保存到Excel完成")if __name__ == '__main__':main()

这篇关于求助-爬取天眼查上包含特定关键字的 所有的公司的名称对应的联系方式的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/464263

相关文章

MybatisGenerator文件生成不出对应文件的问题

《MybatisGenerator文件生成不出对应文件的问题》本文介绍了使用MybatisGenerator生成文件时遇到的问题及解决方法,主要步骤包括检查目标表是否存在、是否能连接到数据库、配置生成... 目录MyBATisGenerator 文件生成不出对应文件先在项目结构里引入“targetProje

C#使用yield关键字实现提升迭代性能与效率

《C#使用yield关键字实现提升迭代性能与效率》yield关键字在C#中简化了数据迭代的方式,实现了按需生成数据,自动维护迭代状态,本文主要来聊聊如何使用yield关键字实现提升迭代性能与效率,感兴... 目录前言传统迭代和yield迭代方式对比yield延迟加载按需获取数据yield break显式示迭

c# checked和unchecked关键字的使用

《c#checked和unchecked关键字的使用》C#中的checked关键字用于启用整数运算的溢出检查,可以捕获并抛出System.OverflowException异常,而unchecked... 目录在 C# 中,checked 关键字用于启用整数运算的溢出检查。默认情况下,C# 的整数运算不会自

在MyBatis的XML映射文件中<trim>元素所有场景下的完整使用示例代码

《在MyBatis的XML映射文件中<trim>元素所有场景下的完整使用示例代码》在MyBatis的XML映射文件中,trim元素用于动态添加SQL语句的一部分,处理前缀、后缀及多余的逗号或连接符,示... 在MyBATis的XML映射文件中,<trim>元素用于动态地添加SQL语句的一部分,例如SET或W

C#实现获得某个枚举的所有名称

《C#实现获得某个枚举的所有名称》这篇文章主要为大家详细介绍了C#如何实现获得某个枚举的所有名称,文中的示例代码讲解详细,具有一定的借鉴价值,有需要的小伙伴可以参考一下... C#中获得某个枚举的所有名称using System;using System.Collections.Generic;usi

通过C#获取PDF中指定文本或所有文本的字体信息

《通过C#获取PDF中指定文本或所有文本的字体信息》在设计和出版行业中,字体的选择和使用对最终作品的质量有着重要影响,然而,有时我们可能会遇到包含未知字体的PDF文件,这使得我们无法准确地复制或修改文... 目录引言C# 获取PDF中指定文本的字体信息C# 获取PDF文档中用到的所有字体信息引言在设计和出

SSID究竟是什么? WiFi网络名称及工作方式解析

《SSID究竟是什么?WiFi网络名称及工作方式解析》SID可以看作是无线网络的名称,类似于有线网络中的网络名称或者路由器的名称,在无线网络中,设备通过SSID来识别和连接到特定的无线网络... 当提到 Wi-Fi 网络时,就避不开「SSID」这个术语。简单来说,SSID 就是 Wi-Fi 网络的名称。比如

使用Java解析JSON数据并提取特定字段的实现步骤(以提取mailNo为例)

《使用Java解析JSON数据并提取特定字段的实现步骤(以提取mailNo为例)》在现代软件开发中,处理JSON数据是一项非常常见的任务,无论是从API接口获取数据,还是将数据存储为JSON格式,解析... 目录1. 背景介绍1.1 jsON简介1.2 实际案例2. 准备工作2.1 环境搭建2.1.1 添加

Oracle Start With关键字

Oracle Start With关键字 前言 旨在记录一些Oracle使用中遇到的各种各样的问题. 同时希望能帮到和我遇到同样问题的人. Start With (树查询) 问题描述: 在数据库中, 有一种比较常见得 设计模式, 层级结构 设计模式, 具体到 Oracle table中, 字段特点如下: ID, DSC, PID; 三个字段, 分别表示 当前标识的 ID(主键), DSC 当

关键字synchronized、volatile的比较

关键字volatile是线程同步的轻量级实现,所以volatile性能肯定比synchronized要好,并且volatile只能修饰于变量,而synchronized可以修饰方法,以及代码块。随着JDK新版本的发布,synchronized关键字的执行效率上得到很大提升,在开发中使用synchronized关键字的比率还是比较大的。多线程访问volatile不会发生阻塞,而synchronize