huguo002 发表于 2019-5-18 11:39

Python多线程采集百度相关搜索关键词工具带exe程序!

本帖最后由 huguo002 于 2020-1-7 15:22 编辑

Python多线程采集百度相关搜索关键词工具带exe程序!
Python多线程采集百度相关搜索关键词工具带exe程序!

#百度相关搜索关键词抓取,读取txt关键词,导出txt关键词

# -*- coding=utf-8 -*-
import requests
import re
import time
from multiprocessing.dummy import Pool as ThreadPool


#百度相关关键词查询
def xgss(url):
    headers = {
      "User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36"
    }
    html=requests.get(url,headers=headers).text
    #print(html)
    ze=r'<div id="rs"><div class="tt">相关搜索</div><table cellpadding="0">(.+?)</table></div>'
    xgss=re.findall(ze,html,re.S)
    #print(xgss)
    xgze=r'<th><a href="(.+?)">(.+?)</a></th>'
    sj=re.findall(xgze,str(xgss),re.S)
    #print(sj)
    gjc=''
    for x in sj:
      print(x)
      gjc=gjc+x+'\n'

    # 导出关键词为txt文本
    with open(".\gjcsj.txt", 'a', encoding='utf-8') as f:
      f.write(gjc)
    print("-----------------------------------")
    return gjc


print("程序运行,正在导入关键词列表!!!")
print("-----------------------------------")
# 导入要搜索的关键词txt列表
urls = []
data = []
for line in open('.\gjc.txt', "r", encoding='utf-8'):
    data.append(line)
print("导入关键词列表成功!")
print("-----------------------------------")

#转换关键词为搜索链接
for keyword in data:
    url = 'https://www.baidu.com/s?wd=' + keyword
    urls.append(url)

print("采集百度相关搜索关键词开启!")
print("...................")
#多线程获取相关关键词
try:
    # 开4个 worker,没有参数时默认是 cpu 的核心数
    pool = ThreadPool()
    results = pool.map(xgss, urls)
    pool.close()
    pool.join()
    print("采集百度相关搜索关键词完成,已保存于gjcsj.txt!")
except:
    print("Error: unable to start thread")

print("8s后程序自动关闭!!!")
time.sleep(8)





附exe百度云地址:链接: https://pan.baidu.com/s/13WFumzmgOH3yTUGex1rYvA 提取码: djmw

直接修改关键词文本列表 gjc.txt即可使用!
有bug可直接私信我!谢谢!

2020.1.7
已更新版本 可以私聊找我要!

欢迎各位py大佬交流分享!

shellcode 发表于 2019-5-18 16:26

这种挖词只是一级的相关搜索,能不能在相关搜索的这些词入库然后在自动递归下去,这样挖的词特别多

wang1618 发表于 2019-6-1 10:46

shellcode 发表于 2019-5-18 16:26
这种挖词只是一级的相关搜索,能不能在相关搜索的这些词入库然后在自动递归下去,这样挖的词特别多

对啊,这样做词更多,不然还得来回导

3650798 发表于 2019-5-18 16:44

提示缺dll 运行不了。。。

huguo002 发表于 2019-5-18 17:10

3650798 发表于 2019-5-18 16:44
提示缺dll 运行不了。。。

你的系统是?

huguo002 发表于 2019-5-18 17:11

shellcode 发表于 2019-5-18 16:26
这种挖词只是一级的相关搜索,能不能在相关搜索的这些词入库然后在自动递归下去,这样挖的词特别多

应该可以,但是你要递归多少次?

shellcode 发表于 2019-5-19 09:08

huguo002 发表于 2019-5-18 17:11
应该可以,但是你要递归多少次?

递归10次比较好,再往后重复居多,公司的seo之前要求我写过这个 ,我用php写过,最后又用火车浏览器写了一次

EchoDS 发表于 2019-5-19 10:32

厉害厉害厉害

ispmaa 发表于 2019-5-22 08:20

下载测试一下,感谢楼主。

ispmaa 发表于 2019-5-22 13:19

下载后压缩包 不能用

sitiger 发表于 2019-5-22 22:42

看看。。。
页: [1] 2 3 4 5
查看完整版本: Python多线程采集百度相关搜索关键词工具带exe程序!