1. <em id="yud1w"><acronym id="yud1w"><u id="yud1w"></u></acronym></em>
      
      
      <button id="yud1w"></button>

      python

      当前位置:首页?>?SEO工具?>?当前文章

      SEO工具

      python多线程采集百度pc相关搜索词

      2020-08-24 174赞 python中国网
      每篇文章努力于解决一个问题!python高级、python面试全套、操作系统经典课等可移步文章底部。

        除了搜索框下拉词,搜索结果相关搜索词词是扩词一个的渠道。批量获取百度相关搜索词脚本如下:

        1、准备关键词文件kwd.txt。(一行一个关键词)

        2、结果会存储为bdpc_xg.txt。(结果没有进行去重处理,近义词一般会有相同的下拉词)

        3、线程数默认是1,现在百度反爬比之前严重!线程最好是1。【多线程写同一个文件需要加锁否则可能数据错乱】

      # ‐*‐ coding: utf‐8 ‐*‐
      """
      kwd.txt,一行一个关键词
      采集相关搜索词
      默认线程1
      """
      import requests
      import threading
      import queue
      from pyquery import PyQuery as pq
      import time
      import gc
      
      
      # 获取某词serp源码
      def get_html(url, retry=2):
          try:
              r = requests.get(url=url, headers=my_header, timeout=5)
          except Exception as e:
              print('获取源码失败', e)
              time.sleep(6)
              if retry > 0:
                  get_html(url, retry - 1)
          else:
              html = r.content.decode('utf-8', errors='ignore')  # 用r.text有时候识别错误
              url = r.url  # 反爬会重定向,取定向后的地址
              return html, url
      
      
      # 提取相关词
      def get_kwds(html,url):
          kwds = []
          doc = pq(html)  # 偶尔有问题,强制转str
          title = doc('title').text()
          if '_百度搜索' in title and 'https://www.baidu.com/s?tn=48020221' in url:
              # 无相关搜索,不会报错
              xg_kwds = doc('#rs table tr th a').items()
              for kwd_xg in xg_kwds:
                  kwd_xg = kwd_xg.text()
                  kwds.append(kwd_xg)
          else:
              print('源码异常,可能反爬')
              time.sleep(100)
          return kwds
      
      
      # 线程函数
      def main():
          while 1:
              kwd = q.get()
              url = 'https://www.baidu.com/s?tn=48020221_28_hao_pg&ie=utf-8&wd={}'.format(kwd)
              try:
                  html,now_url = get_html(url)
                  kwds = get_kwds(html,now_url)
              except Exception as e:
                  print(e)
              else:
                  for kwd in kwds:
                      f.write(kwd + '
      ')
                      print(kwd)
                  f.flush()
              finally:
                  del kwd,url
                  gc.collect()
                  q.task_done()
      
      
      if __name__ == "__main__":
          # 结果保存文件
          f = open('bdpc_xg.txt','w',encoding='utf-8')
          # 关键词队列
          q = queue.Queue()
          for kwd in open('kwd.txt',encoding='utf-8'):
              kwd = kwd.strip()
              q.put(kwd)
          # UA设置
          my_header = {
              'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36',
              'cookie':'wpr=0;rl__test__cookies=1576231586613; BDICON=10123156; BIDUPSID=95E739A8EE050812705C1FDE2584A61E; PSTM=1563865961; BAIDUID=95E739A8EE050812705C1FDE2584A61E:SL=0:NR=10:FG=1; BDUSS=NMRzZPVUFqR0JtbzJJc1ZDdkx2MGtiQUpvWVNUSjhnSUFmRFRmTnpDdmpGcXhkRVFBQUFBJCQAAAAAAAAAAAEAAADag5oxzI2IkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOOJhF3jiYRdOU; MSA_PBT=146; plus_lsv=f197ee21ffd230fd; plus_cv=1::m:49a3f4a6; MSA_ZOOM=1000; MSA_WH=394_670; lsv=searchboxcss_591d86b-globalBcss_565c244-wwwBcss_777000e-globalT_androidcss_e2c894e-wwwT_androidcss_90adf93; ysm=10313|10313; delPer=0; BDRCVFR[xoix5KwSHTc]=9xWipS8B-FspA7EnHc1QhPEUf; ___rl__test__cookies=1576220661807; SE_LAUNCH=5%3A26270344_0%3A26270344; BDICON=10123156; BDPASSGATE=IlPT2AEptyoA_yiU4V_43kIN8enzTri4H4PISkpT36ePdCyWmhHWBAREUjD6YnSgBC3gzDDPdstPoifKXlVXa_EqnBsZolpMany5xNSCgsTtPsx17QovIab2KUE2sA8PbRhL-3MJJ3NUMWosyBDxhAY1fe768Qx5huvRrzHgmMjsAkeR3oj6r7aTY767O-0APNuc-R0QbSh-OkOWVOGxRILYhFchOJ1L70aOatY6C3D5q6oY0RuiZMExGI8mFppi_x3nBQOLkKaoEV55qysc; BDORZ=B490B5EBF6F3CD402E515D22BCDA1598; FEED_SIDS=345657_1213_18; rsv_i=c8e0s9Kbgfe3IYpd4YQd9DWYvBco3sBW3mXRj6IEo6%2FgSyu%2Frc00sEfOpcIfTeIYx8TsGI5lR4gwD25GaSdnvPjVCMWNixE; BAIDULOC=11562630.22873027_149874.6866054242_16432_20001_1576231577543; wise_tj_ub=ci%40-1_-1_-1_-1_-1_-1_-1%7Ciq%408_1_7_275%7Ccb%40-1_-1_-1_-1_-1_-1_-1%7Cce%401%7Ctse%401; H_WISE_SIDS=136722_139419_139405_137831_114177_139251_120169_138490_133995_138878_137979_137690_131247_132552_137750_136680_118880_118865_118839_118832_118793_138165_107313_138882_136431_138845_138691_136863_138147_138114_139174_136195_131861_137105_139274_139400_133847_138476_137734_138343_137467_138564_138648_131423_138663_136537_138178_110085_137441_127969_138302_137252_139507_139408_127417_138312_137187_136635_138425_138562_138943_135718_139221_138239; BDSVRTM=55; BDORZ=SFH; COOKIE_SESSION=10914_1_1_8_1_t1_32_5_5_1_0_5_42_1576231572%7C9%230_0_0_0_0_0_0_0_1576144558%7C1; FC_MODEL=0_1_17_0_0_0_1_0_0_0_0_0_5_32_1_18_0_0_1576231572663%7C9%2310.3_-1_-1_5_1_1576231567476_1576220658164%7C9; ASUV=1.2.114; __bsi=8269619105128910962_00_24_N_R_1_0303_c02f_Y; BDSVRBFE=Go; OUTFOX_SEARCH_USER_ID_NCOO=78699081.532675; wise_tj_ub=ci%40-1_-1_-1_-1_-1_-1_-1%7Ciq%40-1_-1_-1_-1%7Ccb%4056_10_56_10_82_350_73%7Cce%40-1%7Ctse%401'
              }
          # 设置线程数
          for i in list(range(1)):
              t = threading.Thread(target=main)
              t.setDaemon(True)
              t.start()
          q.join()
          f.flush()
          f.close()
      
      
      
      
      seo是什么意思
      什么叫做seo
      seo专员工资一般多少
      seo是什么职业
      网络爬虫
      seo站内优化最主要的是什么
      Seo工具
      东莞seo顾问
      seo是什么
      sem的定义是什么
      标准态逸度定义
      sem专员工作累吗
      sem和seo
      sem的意义
      sem岗位前景
      化学sem是什么意思
      统计sem是什么意思
      seo行业
      php自学网站
      java和php哪个难学
      php自学教程
      为什么程序员鄙视php
      php 教学
      php学费多少
      php有用吗
      学好js要多久
      django 用的人多吗
      python网站
      python语言
      python 免费空间
      python有什么用
      python是什么
      python为什么叫爬虫
      python 类
      python和java
      python爬虫教程
      c语言在线编程
      c语言经典程序100例
      c语言可以做什么软件
      数学c上3下5
      c多多 餐饮.com
      c字母
      排列组合c的计算方法
      c语言例子
      菜鸟教程100例
      jaua
      c和c++哪个好
      下载download地址
      js实现页面加载提示框
      jdk8下载
      学java
      24hours
      jquery音标
      jdk安装
      c语言在线编程
      c语言经典程序100例
      c语言可以做什么软件
      数学c上3下5
      c多多 餐饮.com
      c字母
      排列组合c的计算方法
      c语言例子
      菜鸟教程100例
      编程猫和scratch
      怎么从0开始学黑客
      计算机编程语言
      scratch编程下载
      编程入门网
      学电脑编程要多久
      scratch手机版
      孩子学编程的坏处
      少儿编程培训班骗局
      66ip代理
      66ip爬取
      seo 优帮云.com
      python com
      python3
      python有什么用
      python4
      python如何使用
      python a
      
      

        百度PC相关搜索词采集代码如上,大家可以尝试用用,有事情及时联系。

      文章评论

      python多线程采集百度pc相关搜索词文章写得不错,值得赞赏
      国产99视频精品免视看6