python采集百度搜索结果带有特定URL的链接代码实例


Posted in Python onAugust 30, 2019

这篇文章主要介绍了python采集百度搜索结果带有特定URL的链接代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

#coding utf-8
import requests
from bs4 import BeautifulSoup as bs
import re
from Queue import Queue
import threading
from argparse import ArgumentParser

arg = ArgumentParser(description='baidu_url_collet py-script by xiaoye')
arg.add_argument('keyword',help='keyword like inurl:?id=for searching sqli site')
arg.add_argument('-p','--page',help='page count',dest='pagecount',type=int)
arg.add_argument('-t','--thread',help='the thread_count',dest='thread_count',type=int,default=10)
arg.add_argument('-o','--outfile',help='the file save result',dest='oufile',type=int,default='result.txt')
result = arg.parse_args()
headers = {'User-Agent':'Mozilla/5.0(windows NT 10.0 WX64;rv:50.0) Gecko/20100101 Firefox/50.0'}

class Bg_url(threading.Thread):
  def __init__(self,que):
    threading.Thread.__init__(self)
    self._que = que
  def run(self):
    while not self._que.empty():
      URL = self._que.get()
      try:
        self.bd_url_collet(URL)
      except Exception,e:
        print(e)
        pass
  def bd_url_collect(self, url):
    r = requests.get(url, headers=headers, timeout=3)
    soup = bs(r.content, 'lxml', from_encoding='utf-8')
    bqs = soup.find_all(name='a', attrs={‘data-click‘:re.compile(r'.'), 'class':None})#获得从百度搜索出来的a标签的链接
    for bq in bqs:
      r = requests.get(bq['href'], headers=headers, timeout=3)#获取真实链接
      if r.status_code == 200:#如果状态码为200
        print r.url
        with open(result.outfile, 'a') as f:
          f.write(r.url + '\n')
def main():
  thread = []
  thread_count = result.thread_count
  que = Queue()
  for i in range(0,(result.pagecount-1)*10,10):
  que.put('https://www.baidu.com/s?wd=' + result.keyword + '&pn=' + str(i))
  or i in range(thread_count):
  thread.append(Bd_url(que))
  for i in thread:
    i.start()
  for i in thread:
    i.join()    
if __name__ == '__main__':
  main()  
#执行格式
python aaaaa.py "inurl:asp?id=" -p 30 -t 30

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python迭代器实例简析
Sep 25 Python
Python中设置变量作为默认值时容易遇到的错误
Apr 03 Python
各个系统下的Python解释器相关安装方法
Oct 12 Python
全面了解Python的getattr(),setattr(),delattr(),hasattr()
Jun 14 Python
Django框架的中的setting.py文件说明详解
Oct 15 Python
python使用pygame框架实现推箱子游戏
Nov 20 Python
关于阿里云oss获取sts凭证 app直传 python的实例
Aug 20 Python
使用OpenCV实现仿射变换—缩放功能
Aug 29 Python
解决pandas展示数据输出时列名不能对齐的问题
Nov 18 Python
python科学计算之numpy——ufunc函数用法
Nov 25 Python
pytorch中torch.max和Tensor.view函数用法详解
Jan 03 Python
利用Python第三方库实现预测NBA比赛结果
Jun 21 Python
python获取Linux发行版名称
Aug 30 #Python
python实现ip地址查询经纬度定位详解
Aug 30 #Python
Django 对IP访问频率进行限制的例子
Aug 30 #Python
关于Python3 类方法、静态方法新解
Aug 30 #Python
Python 获取指定文件夹下的目录和文件的实现
Aug 30 #Python
简单的Python调度器Schedule详解
Aug 30 #Python
详解在Python中以绝对路径或者相对路径导入文件的方法
Aug 30 #Python
You might like
默默小谈PHP&MYSQL分页原理及实现
2007/01/02 PHP
一周让你学会PHP 不错的学习资料
2009/02/06 PHP
php正则取img标记中任意属性(正则替换去掉或改变图片img标记中的任意属性)
2013/08/13 PHP
2014年10个最佳的PHP图像操作库
2014/07/14 PHP
PHP内存缓存Memcached类实例
2014/12/08 PHP
PHP内核探索:哈希表碰撞攻击原理
2015/07/31 PHP
JavaScript 字符串处理函数使用小结
2010/12/02 Javascript
javascript中有趣的反柯里化深入分析
2012/12/05 Javascript
JQuery 控制内容长度超出规定长度显示省略号
2014/05/23 Javascript
jQuery实现放大镜效果实例代码
2016/03/17 Javascript
详解微信小程序Radio选中样式切换
2017/07/06 Javascript
jQuery Easyui Treegrid实现显示checkbox功能
2017/08/08 jQuery
Vue2.0设置全局样式(less/sass和css)
2017/11/18 Javascript
微信小程序button组件使用详解
2018/01/31 Javascript
JavaScript中创建原子的方法总结
2018/08/26 Javascript
js实现提交前对列表数据的增删改查
2020/01/16 Javascript
node.js使用 http-proxy 创建代理服务器操作示例
2020/02/10 Javascript
nodejs制作小爬虫功能示例
2020/02/24 NodeJs
python通过邮件服务器端口发送邮件的方法
2015/04/30 Python
Python机器学习logistic回归代码解析
2018/01/17 Python
Python绘制正余弦函数图像的方法
2018/08/28 Python
Python爬取数据保存为Json格式的代码示例
2019/04/09 Python
Python 画出来六维图
2019/07/26 Python
Python进程Multiprocessing模块原理解析
2020/02/28 Python
印尼旅游网站:via
2017/11/12 全球购物
blueseventy官网:铁人三项和比赛泳衣
2021/02/06 全球购物
在C#中如何实现多态
2014/07/02 面试题
外语专业毕业生自我评价分享
2013/10/05 职场文书
项目合作计划书
2014/01/09 职场文书
自查自纠整改报告
2014/11/06 职场文书
2014年档案管理工作总结
2014/11/17 职场文书
考研英语复习计划
2015/01/19 职场文书
公司表扬稿范文
2015/05/05 职场文书
小兵张嘎观后感300字
2015/06/03 职场文书
html实现弹窗的实例
2021/06/09 HTML / CSS
JavaScript前端面试组合函数
2022/06/21 Javascript