求乌江鱼的做法挽歌的链接

求捷信福袋的链接_百度知道
求捷信福袋的链接
我有更好的答案
您好,感谢您对捷信的关注,捷信福贷网站:
采纳率:91%
来自团队:
为您推荐:
其他类似问题
您可能关注的内容
捷信的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。求匪我思存的书《寻找爱情的邹小姐》完整版!求链接,最好百度云!谢谢_百度知道
该问题可能描述不清,建议你
求匪我思存的书《寻找爱情的邹小姐》完整版!求链接,最好百度云!谢谢
我有更好的答案
采纳率:73%
你自己去呗,
为您推荐:
其他类似问题
匪我思存的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。求禁止想象的链接_百度知道
求禁止想象的链接
求禁止想象的链接
我有更好的答案
a href="http://zhidao.baidu.html?fr=qlquick&entry=qb_browse_word" target="_blank">http://zhidao.com/question/053444.baidu.html?fr=qlquick&entry=qb_browse_word如果对你有帮助请采纳点个赞.com/question/053444
采纳率:80%
为您推荐:
其他类似问题
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。求一份磁力链接搜索网站的源码,最好能来个大神讲一下这个搜索的原理 - 『悬赏问答区』
- 吾爱破解 - LCG - LSG |安卓破解|病毒分析|破解软件|www.52pojie.cn
后使用快捷导航没有帐号?
只需一步,快速开始
请完成以下验证码
请完成以下验证码
查看: 2480|回复: 8
求一份磁力链接搜索网站的源码,最好能来个大神讲一下这个搜索的原理
阅读权限20
要求如题,小弟是做网站的但是一直不知道种子搜索网站的原理是啥,不知吾爱有没有大神能讲解一下
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限10
你想干什么啊
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限25
DHT爬虫实现原理大致介绍:
DHT爬虫的python实现代码
[Python] 纯文本查看 复制代码#!/usr/bin/env python
# encoding: utf-8
import socket
from hashlib import sha1
from random import randint
from struct import unpack
from socket import inet_ntoa
from threading import Timer, Thread
from time import sleep
from collections import deque
from bencode import bencode, bdecode
BOOTSTRAP_NODES = (
(&router.bittorrent.com&, 6881),
(&dht.transmissionbt.com&, 6881),
(&router.utorrent.com&, 6881)
TID_LENGTH = 2
RE_JOIN_DHT_INTERVAL = 3
TOKEN_LENGTH = 2
def entropy(length):
return &&.join(chr(randint(0, 255)) for _ in xrange(length))
def random_id():
h = sha1()
h.update(entropy(20))
return h.digest()
def decode_nodes(nodes):
length = len(nodes)
if (length % 26) != 0:
for i in range(0, length, 26):
nid = nodes[i:i+20]
ip = inet_ntoa(nodes[i+20:i+24])
port = unpack(&!H&, nodes[i+24:i+26])[0]
n.append((nid, ip, port))
def timer(t, f):
Timer(t, f).start()
def get_neighbor(target, nid, end=10):
return target[:end]+nid[end:]
class KNode(object):
def __init__(self, nid, ip, port):
self.nid = nid
self.ip = ip
self.port = port
class DHTClient(Thread):
def __init__(self, max_node_qsize):
Thread.__init__(self)
self.setDaemon(True)
self.max_node_qsize = max_node_qsize
self.nid = random_id()
self.nodes = deque(maxlen=max_node_qsize)
def send_krpc(self, msg, address):
self.ufd.sendto(bencode(msg), address)
except Exception:
def send_find_node(self, address, nid=None):
nid = get_neighbor(nid, self.nid) if nid else self.nid
tid = entropy(TID_LENGTH)
&q&: &find_node&,
&id&: nid,
&target&: random_id()
self.send_krpc(msg, address)
def join_DHT(self):
for address in BOOTSTRAP_NODES:
self.send_find_node(address)
def re_join_DHT(self):
if len(self.nodes) == 0:
self.join_DHT()
timer(RE_JOIN_DHT_INTERVAL, self.re_join_DHT)
def auto_send_find_node(self):
wait = 1.0 / self.max_node_qsize
while True:
node = self.nodes.popleft()
self.send_find_node((node.ip, node.port), node.nid)
except IndexError:
sleep(wait)
def process_find_node_response(self, msg, address):
nodes = decode_nodes(msg[&r&][&nodes&])
for node in nodes:
(nid, ip, port) = node
if len(nid) != 20: continue
if ip == self.bind_ip: continue
if port & 1 or port & 65535: continue
n = KNode(nid, ip, port)
self.nodes.append(n)
class DHTServer(DHTClient):
def __init__(self, master, bind_ip, bind_port, max_node_qsize):
DHTClient.__init__(self, max_node_qsize)
self.master = master
self.bind_ip = bind_ip
self.bind_port = bind_port
self.process_request_actions = {
&get_peers&: self.on_get_peers_request,
&announce_peer&: self.on_announce_peer_request,
self.ufd = socket.socket(socket.AF_INET, socket.SOCK_DGRAM, socket.IPPROTO_UDP)
self.ufd.bind((self.bind_ip, self.bind_port))
timer(RE_JOIN_DHT_INTERVAL, self.re_join_DHT)
def run(self):
self.re_join_DHT()
while True:
(data, address) = self.ufd.recvfrom(65536)
msg = bdecode(data)
self.on_message(msg, address)
except Exception:
def on_message(self, msg, address):
if msg[&y&] == &r&:
if msg[&r&].has_key(&nodes&):
self.process_find_node_response(msg, address)
elif msg[&y&] == &q&:
self.process_request_actions[msg[&q&]](msg, address)
except KeyError:
self.play_dead(msg, address)
except KeyError:
def on_get_peers_request(self, msg, address):
infohash = msg[&a&][&info_hash&]
tid = msg[&t&]
nid = msg[&a&][&id&]
token = infohash[:TOKEN_LENGTH]
&id&: get_neighbor(infohash, self.nid),
&nodes&: &&,
&token&: token
self.send_krpc(msg, address)
except KeyError:
def on_announce_peer_request(self, msg, address):
infohash = msg[&a&][&info_hash&]
token = msg[&a&][&token&]
nid = msg[&a&][&id&]
tid = msg[&t&]
if infohash[:TOKEN_LENGTH] == token:
if msg[&a&].has_key(&implied_port&) and msg[&a&][&implied_port&] != 0:
port = address[1]
port = msg[&a&][&port&]
if port & 1 or port & 65535: return
self.master.log(infohash, (address[0], port))
except Exception:
self.ok(msg, address)
def play_dead(self, msg, address):
tid = msg[&t&]
&e&: [202, &Server Error&]
self.send_krpc(msg, address)
except KeyError:
def ok(self, msg, address):
tid = msg[&t&]
nid = msg[&a&][&id&]
&id&: get_neighbor(nid, self.nid)
self.send_krpc(msg, address)
except KeyError:
class Master(object):
def log(self, infohash, address=None):
print &%s from %s:%s& % (
infohash.encode(&hex&), address[0], address[1]
# using example
if __name__ == &__main__&:
# max_node_qsize bigger, bandwith bigger, speed higher
dht = DHTServer(Master(), &0.0.0.0&, 6882, max_node_qsize=200)
dht.start()
dht.auto_send_find_node()
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限25
应该是从专门几个大网站找
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限20
我表示我也不懂
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限20
DHT爬虫实现原理大致介绍:http://codemacro.com//crawl-dht/
DHT爬虫的python实现代码
谢谢,看来是我激进了,代码其实我不懂。其实我是想了解一下比如:输入关键词搜索,到搜到种子的过程的。还有就是这个爬虫程序写好了之后要不要经常性的维护,是不是不维护的话,某一关键词搜到的资源就越来越少了
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限25
谢谢,看来是我激进了,代码其实我不懂。其实我是想了解一下比如:输入关键词搜索,到搜到种子的过程的。 ...
DHT爬虫其实就是伪造一个假节点,因为是基于P2P的。所以当别人下载时你会收到 INFOHASH 接着确认网络中是否存在此资源然后获取到资源信息后入库,这里还涉及到过滤重复,根据重复次数更新资源热度等等。
搜索的话就是数据库查询罢了。。。当然了把爬虫长期部署在服务器上爬取的大部分是热门资源,所以只有时间的沉淀资源才会收集越来越多的(所以数据库优化也是很关键的)。
ps:我也只是大致了解一些,仅供参考。
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限20
DHT爬虫其实就是伪造一个假节点,因为是基于P2P的。所以当别人下载时你会收到 INFOHASH 接着确认网络中是 ...
谢谢解释,这个数据库是应该怎么理解呀,我只知道sql,oracle,mysql这类布置在服务器上的数据库
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限25
谢谢解释,这个数据库是应该怎么理解呀,我只知道sql,oracle,mysql这类布置在服务器上的数据库
嗯,就是这东西。 不过个人觉得还是用非关系型数据库(nosql)比较好 比如 mongodb 。 因为一旦时间久了数据会很多,千万级,亿级的记录优势就发挥出来了。
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
免责声明:吾爱破解所发布的一切破解补丁、注册机和注册信息及软件的解密分析文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。
( 京ICP备号 | 京公网安备 87号 )
Powered by Discuz!
Comsenz Inc.

我要回帖

更多关于 高等精灵的挽歌 的文章

 

随机推荐