爬取搜狐网有关篮球的网站

方式一:正则

import requests
import re
contents = requests.get(‘http://www.sohu.com‘)
links = re.findall(‘href="(.*?)"‘, contents.text)
vaild_link = []
for i in links:
    if ‘sohu‘ not in i:
        continue
    elif re.search(‘\.jpg|\.pdf|\.css|\.ico|\.tif|\.gif|mailto‘, i):
        continue
    elif i.strip().startswith(‘//‘):
        vaild_link.append(‘http:‘+i.strip())
    else:
        vaild_link.append(i.strip())

for link in vaild_link:
    data = requests.get(link)
    if "篮球" in data.text:
        with open(‘D:\\搜狐网关于篮球的网站.txt‘, ‘a‘, encoding=‘utf-8‘) as f:
            f.write(link+‘\n‘)

方式二:bs4

import requests
from bs4 import BeautifulSoup
import re

def hava_href(tag):
    return tag.has_attr(‘href‘)
contents = requests.get(‘http://www.sohu.com‘)
soup = BeautifulSoup(contents.text, ‘html.parser‘)
links = [i.get(‘href‘) for i in soup.find_all(hava_href)]
vaild_link = []
for i in links:
    if ‘sohu‘ not in i:
        continue
    elif re.search(‘\.jpg|\.pdf|\.css|\.ico|\.tif|\.gif|mailto‘, i):
        continue
    elif i.strip().startswith(‘//‘):
        vaild_link.append(‘http:‘+i.strip())
    else:
        vaild_link.append(i.strip())

for link in vaild_link:
    data = requests.get(link)
    if "篮球" in data.text:
        with open(‘D:\\搜狐网关于篮球的网站.txt‘, ‘a‘, encoding=‘utf-8‘) as f:
            f.write(link+‘\n‘)

原文地址:https://www.cnblogs.com/su-sir/p/12636654.html

时间: 2024-10-03 23:02:07

爬取搜狐网有关篮球的网站的相关文章

Jsoup+HttpUnit爬取搜狐新闻

怎么说呢,静态的页面,但我也写了动态的接口支持,方便后续爬取别的新闻网站使用. 一个接口,接口有一个抽象方法pullNews用于拉新闻,有一个默认方法用于获取新闻首页: public interface NewsPuller { void pullNews(); // url:即新闻首页url // useHtmlUnit:是否使用htmlunit default Document getHtmlFromUrl(String url, boolean useHtmlUnit) throws Ex

第一篇博客(python爬取小故事网并写入mysql)

前言: 这是一篇来自整理EVERNOTE的笔记所产生的小博客,实现功能主要为用广度优先算法爬取小故事网,爬满100个链接并写入mysql,虽然CS作为双学位已经修习了三年多了,但不仅理论知识一般,动手能力也很差,在学习的空余时间前前后后DEBUG了很多次,下面给出源代码及所遇到的BUG. 本博客参照代码及PROJECT来源:http://kexue.fm/archives/4385/ 源代码: 1 import requests as rq 2 import re 3 import codecs

利用Scrapy爬取1905电影网

本文将从以下几个方面讲解Scrapy爬虫的基本操作 Scrapy爬虫介绍 Scrapy安装 Scrapy实例--爬取1905电影网 相关资料 Scrapy 爬虫介绍 Scrapy是Python开发的一个快速,高层次的屏幕抓取和web抓取框架,用于抓取web站点并从页面中提取结构化的数据.Scrapy用途广泛,可以用于数据挖掘.监测和自动化测试. Scrapy吸引人的地方在于它是一个框架,任何人都可以根据需求方便的修改.它也提供了多种类型爬虫的基类,如BaseSpider.sitemap爬虫等,最

Python爬取中国天气网天气

Python爬取中国天气网天气 基于requests库制作的爬虫. 使用方法:打开终端输入 "python3 weather.py 北京(或你所在的城市)" 程序正常运行需要在同文件夹下加入一个"data.csv"文件,内容请参考链接:https://www.cnblogs.com/Rhythm-/p/9255190.html 运行效果: 源码: import sys import re import requests import webbrowser from

爬虫----爬取校花网视频

import requests import re import time import hashlib def get_page(url): print('GET %s' %url) try: response=requests.get(url) if response.status_code == 200: return response.content except Exception: pass def parse_index(res): obj=re.compile('class="i

python爬虫入门练习,使用正则表达式和requests爬取LOL官网皮肤

刚刚python入门,学会了requests模块爬取简单网页,然后写了个爬取LOL官网皮肤的爬虫,代码奉上 #获取json文件#获取英雄ID列表#拼接URL#下载皮肤 #导入re requests模块 import requestsimport reimport time def Download_LOL_Skin(): #英雄信息Json文件地址:https://lol.qq.com/biz/hero/champion.js #获取英雄信息列表 json_url = "https://lol.

简单爬取微医网

一.利用request和xpath爬取微医网 #!/usr/bin/env python # -*- coding: utf-8 -*- #author tom import requests from lxml import etree import pymongo #爬取微医网类 class DoctorSpider(): #初始化应该具有的一些属性 def __init__(self): self.headers={'User-Agent': 'Mozilla/5.0 (Windows N

selenium爬取煎蛋网

selenium爬取煎蛋网 直接上代码 from selenium import webdriver from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.common.by import By from selenium.webdriver.support import expected_conditions as ES import requests import urllib.requ

使用 Scrapy 爬取去哪儿网景区信息

Scrapy 是一个使用 Python 语言开发,为了爬取网站数据,提取结构性数据而编写的应用框架,它用途广泛,比如:数据挖掘.监测和自动化测试.安装使用终端命令 pip install Scrapy 即可. Scrapy 比较吸引人的地方是:我们可以根据需求对其进行修改,它提供了多种类型的爬虫基类,如:BaseSpider.sitemap 爬虫等,新版本提供了对 web2.0 爬虫的支持. 1 Scrapy 介绍 1.1 组成 Scrapy Engine(引擎):负责 Spider.ItemP