因为工作需要,利用业余时间开发的,可以查询百度排名+360排名工具,附上代码。

#360搜索排名查询
# -*- coding=utf-8 -*-
import requests
from lxml import etree
 
headers={
    'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36'
}
 
def ss360(keyword,num,search_url):
    search_datas=''
    for x in range(1,num+1):
        print(f"正在查询第{x}页搜索结果...")
        url=f"https://www.so.com/s?q={keyword}&pn={x}"
        html=requests.get(url,headers=headers).text
        #print(html)
        con=etree.HTML(html)
        #print(con)
        title=con.xpath('//h3[@class="res-title "]/a/text()')
        #print(title)
        #print(len(title))
 
        datas=con.xpath('///h3/a')
        #print(len(datas))
        for data in datas:
            #print(data)
            try:
                data_res=data.attrib['data-res']
                #pos=re.findall('"pos":(.+?),',data_res,re.S)
                #print(pos[0])
                data_res=eval(data_res) #转换为字典数据
                pos=data_res['pos']
                print(pos)
            except:
                pos=''
            try:
                data_url=data.attrib['data-url']
            except:
                data_url=data.attrib['href']
            if "http://e.360.cn/static/" not in data_url and "javascript:" not in data_url:
                print(data_url)
                print('\r')
            if search_url in data_url:
                pm=(x-1)*10+pos
                print(f'第{x}页,排名:{pos}/{pm},链接:{data_url}')
                search_data=f'第{x}页,排名:{pos}/{pm},链接:{data_url}'
                search_datas ='%s%s%s'%(search_datas,search_data,'\n')
    print(search_datas)
    return search_datas
 
if __name__ == "__main__":
    search_datas = ''
    keyword = input('请输入关键词>>')
    num = int(input('请输入最大查询页数>>'))
    search_website = input('请输入网址(建议输入不带www网址)>>')
    search_datas=ss360(keyword,num,search_website)
    print('========================查询结果========================\n\n')
    print(search_datas)
    print('\n\n========================查询结束========================\n')

  

最新文章

  1. 用c#读取文件内容中文是乱码的解决方法:
  2. Java解压上传zip或rar文件,并解压遍历文件中的html的路径
  3. 使用Github遇到的问题及解决办法
  4. 【USACO 1.5.2】回文质数
  5. Spring Ldap 的增删改查
  6. 如何将一个Jsp网站打包发布(发布为War文件)
  7. ECSHOP购物车页面显示商品简单描述
  8. [数据结构]C语言队列的实现
  9. hdu4149 Magic Potion
  10. 面向对象(this的问题一)
  11. AD服务无法启动
  12. 牛客练习赛38 D 题 出题人的手环 (离散化+树状数组求逆序对+前缀和)
  13. javassist实例
  14. Python多进程并发操作中进程池Pool的应用
  15. Django框架的使用教程--环境的搭建和项目的创建[一]
  16. python SMTP
  17. C#导出Excel文件Firefox中文件名乱码
  18. 【转载】gdi+ 内存泄漏
  19. 带参数setTimeout
  20. unity TileMap 简述

热门文章

  1. Emiya 家今天的饭
  2. jquery监听回车
  3. JS系列:函数function
  4. 将python工程部署到新服务器(对virtualenv工具进行环境迁移)
  5. Python多进程方式抓取基金网站内容的方法分析
  6. 《算法图解》全本PDF下载附百度云链接
  7. git 学习笔记 ---解决冲突
  8. IDEA 2019 快捷键终极大全
  9. 分布式缓存重建并发冲突和zookeeper分布式锁解决方案
  10. 使用Powershell启用/关闭Windows功能