日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python免费网络采集_python网络数据采集7 采集一个网站所有的外链

發布時間:2024/8/23 python 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python免费网络采集_python网络数据采集7 采集一个网站所有的外链 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

[python]代碼庫from urllib.request import urlopen

from bs4 import BeautifulSoup

from urllib.parse import urlparse

import re

import random

import datetime

#采集一個網站所有的外鏈

pages = set()

random.seed(datetime.datetime.now())

allExtLinks = set()

allIntLinks = set()

def getAllExternalLinks(siteUrl):

html = urlopen(siteUrl)

bsObj = BeautifulSoup(html,'html.parser')

internalLinks = getInternaLinks(bsObj,splitAddress(siteUrl)[0]) # 獲得所有內鏈

externalLinks = getExternalLinks(bsObj, splitAddress(siteUrl)[0]) # 獲得所有外鏈

for link in externalLinks:

if link not in allExtLinks: # 如果此外鏈沒被記錄在allExtLinks集合里

allExtLinks.add(link) # 將此外鏈放入集合

print('外鏈:'+link)

for link in internalLinks:

if link not in allIntLinks:

print("即將獲取鏈接的URL是:" + link)

allIntLinks.add(link)

getAllExternalLinks(link)

# 獲取頁面所有內鏈的列表

def getInternaLinks(bsObj,includeUrl):

internalLinks = []

#找出所有以/開頭的鏈接

for link in bsObj.findAll('a',href = re.compile("^(/"+includeUrl+")")):

if link.attrs['href'] is not None: # 如果此鏈接包含href屬性

if link.attrs['href'] not in internalLinks: # 如果此鏈接沒有被放進internalLinks列表

internalLinks.append(link.attrs['href'])

return internalLinks

# 獲取頁面的所有外鏈列表

def getExternalLinks(bsObj,excludeUrl):

externalLinks = []

for link in bsObj.findAll('a',href = re.compile('^(http|www)((?!'+excludeUrl+').)*$')):# 找出所有以www或http開頭且不包含當前url的鏈接

if link.attrs['href'] is not None: # 如果此鏈接包含href屬性

if link.attrs['href'] not in externalLinks: # 如果此鏈接沒有被放進externalLinks列表

externalLinks.append(link.attrs['href'])

return externalLinks

def splitAddress(address):

addressParts = address.replace("http://","").split("/") # replace,表示在address中用空字符串替換http:// addressParts得到['www.oreilly.com','']

return addressParts

def getRandomExternalLink(startingPage):

html = urlopen(startingPage)

bsObj = BeautifulSoup(html,'html.parser')

externalLinks = getExternalLinks(bsObj,splitAddress(startingPage)[0]) # splitAddress(startingPage)[0]是www.oreilly.com

if len(externalLinks) == 0: # 如果在www.oreilly.com中沒找到外鏈

internalLinks = getInternaLinks(bsObj,startingPage) # 從www.oreilly.com獲取內鏈

return getInternaLinks(internalLinks[random.randint(0,len(internalLinks)-1)])

else:

return externalLinks[random.randint(0, len(externalLinks) - 1)]

def followExternalOnly(startingSite):

externalLink = getRandomExternalLink(startingSite)

print("隨機外鏈是:"+externalLink)

followExternalOnly(externalLink)

# followExternalOnly("http://oreilly.com/")

#getInternaLinks()

getAllExternalLinks("http://oreilly.com")

[代碼運行效果截圖]

總結

以上是生活随笔為你收集整理的python免费网络采集_python网络数据采集7 采集一个网站所有的外链的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 亚洲精品一区二区三区区别 | 国产伦理一区二区 | 久热免费视频 | 少妇特黄a一区二区三区 | 久久综合精品国产二区无码不卡 | 波多野吉衣中文字幕 | 麻豆传媒网站入口 | 88av.com| 亚洲自拍三区 | 色爱区综合 | 第四色影音先锋 | 美女扒开让男人桶爽 | 久草超碰| 色吊丝网站 | 天堂av成人| 欧美日韩精品中文字幕 | 偷拍综合网 | 国模杨依粉嫩蝴蝶150p | 亚洲免费视频一区二区三区 | 奇米影视一区二区三区 | 色妹子综合 | 日本少妇videos高潮 | 精品视频在线免费 | 精品国产视频一区二区 | 亚洲综合在| 性中国古装videossex | 都市激情久久 | 九九九亚洲 | 99精品一区二区三区无码吞精 | 国产精品呻吟久久 | 五月天综合网站 | 五月天激情啪啪 | 天天色影院 | 亚日韩av| 91成人在线免费 | 久热综合 | 国产精品久久久久野外 | 亚洲69av| 毛片av网址 | 狠狠婷 | 久久加久久 | 成人黄色在线看 | 青草精品| 麻豆av网址 | 欧美大片在线看 | 99re在线精品视频 | 色呦呦视频在线 | 99视频精品在线 | 国产精品羞羞答答 | 中国一级片在线观看 | 青青草原国产在线观看 | 国产免费一区二区三区最新不卡 | 含羞草一区二区三区 | 黄a网站| 久久短视频| 亚洲天堂久 | 三上悠亚亚洲一区 | 中国a级大片 | 久久久久久久久久久av | 午夜免费观看视频 | 免费在线色 | 日韩美女视频在线 | 激情午夜视频 | 999精品网站 | 97午夜| 神秘马戏团在线观看免费高清中文 | 日本黄色一区二区 | 真实的中国女人做爰 | 欧美成人专区 | 女人扒开腿免费视频app | 日本久久片 | 色女综合 | 亚洲av成人片色在线观看高潮 | 色婷婷aⅴ | 精品一区二区三区在线观看 | 中文字幕一区三区 | 五月婷婷亚洲 | 欧美三级欧美成人高清 | 国产在线一级片 | 一区二区三区视频在线 | 国产视频精品视频 | www成年人 | 蜜桃传媒| 男女啪啪在线观看 | 亚洲 小说区 图片区 都市 | 成人啪啪网站 | 污网在线看 | 91福利视频在线观看 | 九九热国产精品视频 | 99久久精品无免国产免费 | 青青久在线视频 | 狂野欧美性猛交xxxx777 | 欧美熟女一区二区 | 久久四虎| 国产免费一区,二区 | 中文字幕精品一区 | 亚洲精品1 | 日日躁夜夜躁狠狠久久av | 熟女少妇内射日韩亚洲 |