当前位置: 首页>>代码示例>>Python>>正文


Python ServerProxy.search方法代码示例

本文整理汇总了Python中xmlrpc.client.ServerProxy.search方法的典型用法代码示例。如果您正苦于以下问题:Python ServerProxy.search方法的具体用法?Python ServerProxy.search怎么用?Python ServerProxy.search使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在xmlrpc.client.ServerProxy的用法示例。


在下文中一共展示了ServerProxy.search方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: QueryClient

# 需要导入模块: from xmlrpc.client import ServerProxy [as 别名]
# 或者: from xmlrpc.client.ServerProxy import search [as 别名]
class QueryClient(object):
    def __init__(self, server_address=ServerAddress):
        self.server_address = server_address
        self.server_proxy = XMLRPCServerProxy("http://%s:%s/" % self.server_address, allow_none=True)

    def search(self, phrase):
        return decode_from_binary(self.server_proxy.search(phrase))
开发者ID:sotoshigoto,项目名称:LXMLSearchEngine,代码行数:9,代码来源:QueryServer.py

示例2: install_from_pypi

# 需要导入模块: from xmlrpc.client import ServerProxy [as 别名]
# 或者: from xmlrpc.client.ServerProxy import search [as 别名]
 def install_from_pypi(cls, entry_point_name):
     success = False
     pypi = ServerProxy('https://pypi.python.org/pypi')
     resource_id = entry_point_name_to_identifier(entry_point_name)
     distribution_name_parts = ['rinoh', cls.resource_type, resource_id]
     for pkg in pypi.search(dict(name=distribution_name_parts)):
         if pkg['name'] == '-'.join(distribution_name_parts):
             package_name = pkg['name']
             print("Installing {} package '{}' using pip..."
                   .format(cls.resource_type, package_name))
             pip.main(['install', package_name])
             pkg_resources.working_set.__init__()  # rescan entry points
             success = True
             break
     return success
开发者ID:brechtm,项目名称:rinohtype,代码行数:17,代码来源:resource.py

示例3: search

# 需要导入模块: from xmlrpc.client import ServerProxy [as 别名]
# 或者: from xmlrpc.client.ServerProxy import search [as 别名]
    def search(self, query, mode=0):
        results = []

        search = {"name": query}

        if mode == self.SEARCH_FULLTEXT:
            search["summary"] = query

        client = ServerProxy("https://pypi.python.org/pypi")
        hits = client.search(search, "or")

        for hit in hits:
            result = Package(hit["name"], hit["version"], hit["version"])
            result.description = to_str(hit["summary"])
            results.append(result)

        return results
开发者ID:shawegit,项目名称:poetry,代码行数:19,代码来源:pypi_repository.py

示例4: Client

# 需要导入模块: from xmlrpc.client import ServerProxy [as 别名]
# 或者: from xmlrpc.client.ServerProxy import search [as 别名]
class Client(object):
	def __init__(self):
		self.uri = 'https://pypi.python.org/pypi'
		self.proxy = ServerProxy(self.uri)
		self.cache = set()


	def all_distributions(self):
		return self.proxy.list_packages()

	def roles(self, package):
		return [cl[1] for cl in self.proxy.package_roles(package)]

	def user_packages(self, user):
		return [cl[1] for cl in self.proxy.user_packages(user)]

	def release_downloads(self, package, version=None):
		if version is None:
			version = max(self.proxy.package_releases(package))
			if isinstance(version, list):
				version = version[0]
		return self.proxy.release_downloads(package, version)

	def package_releases(self, package):
		return self.proxy.package_releases(package)

	def release_data(self, package, version=None):
		version = max(self.proxy.package_releases(package))
		if isinstance(version, list):
			version = version[0]
		data = self.proxy.release_data(package, version)
		return data


	def simple_search(self, spec, operator='or', getter = None, omit = ('django')):
		"""Can search by name, version, author, author_email, maintainer,
		maintainer_email, home_page, license, summary,
		description, keywords, platform,download_url"""
		from pip.commands.search import transform_hits, highest_version
		from
		results = set()
		packages = {}
		from operator import itemgetter
		filter = itemgetter('name', 'version')
		info_getter = itemgetter('name', 'summary')
		name_getter = itemgetter('name')

		hits = self.proxy.search({'name': spec},{'summary':spec}, operator)
		results = transform_hits(hits)
		for result in results:
			result['version'] = highest_version(result['versions'])
			del result['score']
		return results


	def deep_search(self, spec, operator='and', cache = None, limit=20):
		results =list()
		temp_cache = set()
		initial_results = self.simple_search(spec, operator='and', getter=None, omit=['django'])
		for result in initial_results:
			new = PyPiPackage(result)
			results.append(new)
			temp_cache.add(new)
		if cache is not None:
			self.cache = cache|temp_cache
		else:
			pass
		filtered = sorted(results, key = lambda x: x.max_downloads, reversed=True)
		return filtered[limit:]


	def browse(self, classifiers):
		return self.proxy.browse(classifiers)


	def get_json_url(self, package):
		return "http://pypi.python.org/pypi/{}/json".format(package)
开发者ID:KGerring,项目名称:RevealMe,代码行数:79,代码来源:pypi.py


注:本文中的xmlrpc.client.ServerProxy.search方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。