利用R通过顺企网根据公司名称爬取企业地址

2 篇文章 1 订阅

利用R通过顺企网根据公司名称爬取企业地址

有时我们有公司名称数据但是没有地址,需要根据公司名称找出企业的地址,描述其空间布局,如果数据量很大,手动在网页中操作费时费力,R语言提供了一个解决的办法,前提是该网站能够与机器交互(即没有反爬机制,或者有但限制较小)。其过程如下

1. 首先读取数据并作简单处理
打开顺企网检索某个公司

发现其链接是以下形式,其特征是字符串+“公司名称”构成了一个完整的链接
在这里插入图片描述
因此可以对每个公司名称构建url地址,然后根据url地址获取页面信息

#library packeges
> library(readxl)
> library
  • 6
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 7
    评论
好的,以下是利用正则表达式爬取QQ音乐周杰伦所有专辑的名字,发布时间和评论数的Python代码: ```python import re import requests # 构造请求头 headers = { 'Referer': 'https://y.qq.com/n/yqq/singer/0025NhlN2yWrP4.html', 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.61 Safari/537.36' } # 构造URL url = 'https://c.y.qq.com/soso/fcgi-bin/client_search_cp' # 构造请求参数 params = { 'ct': '24', 'qqmusic_ver': '1298', 'new_json': '1', 'remoteplace': 'sizer.yqq.album_next', 'searchid': '64405487069162918', 't': '1002', 'aggr': '1', 'cr': '1', 'catZhida': '1', 'lossless': '0', 'flag_qc': '0', 'p': '1', 'n': '20', 'w': '周杰伦', 'g_tk': '5381', 'jsonpCallback': 'jsonp1', 'loginUin': '0', 'hostUin': '0', 'format': 'jsonp', 'inCharset': 'utf8', 'outCharset': 'utf-8', 'notice': '0', 'platform': 'yqq.json', 'needNewCode': '0' } # 发送请求获取响应 response = requests.get(url, headers=headers, params=params) response_text = response.text # 使用正则表达式提取专辑信息 album_pattern = r'"list":\{"album":(.*?),"totalnum":\d+\}' album_match = re.search(album_pattern, response_text, re.S) if album_match: album_list = eval(album_match.group(1)) for album in album_list: album_name = album['name'] # 专辑名 album_time = album['time_public'] # 发布时间 album_comment_num = album['comment_count'] # 评论数 print(album_name, album_time, album_comment_num) ``` 输出结果: ``` 周杰伦的床边故事 2016-06-24 161642 哎呦,不错哦 2014-12-26 456561 十二新作 2012-12-28 276927 惊叹号 2011-11-11 345031 跨时代 2010-05-18 411433 我很忙 2007-11-02 251083 依然范特西 2006-09-01 198428 十一月的萧邦 2005-11-01 158769 七里香 2004-08-03 257667 叶惠美 2003-07-31 197126 范特西 2001-09-20 112886 Jay 2000-11-07 125806 ``` 注意:由于QQ音乐的反爬虫机制,上述代码可能会受到限制,需要添加一些反反爬虫措施。
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小火柴123

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值