python - 打印对象十六进制值而不是值
问题描述
使用 python 3.5。
当我下面的代码打印出来时,bs.parse()
它显示对象的十六进制值而不是bs.parse
.
我在这里做错了什么?
class BrickSetSpider(scrapy.Spider):
name = "website_spider"
site_search_url = 'website.com'
website_base = 'http://www.websitenew.com/search?id=site:'
start_urls = [website_base + site_search_url]
def parse(self, response):
website_result_list = []
website_result_page = []
NEXT_PAGE_SELECTOR = 'a.sb_pagN ::attr(href)'
next_page = response.css(NEXT_PAGE_SELECTOR).extract_first()
if next_page:
yield scrapy.Request(
response.urljoin(next_page),
callback=self.parse,
headers={'referer':self.start_urls}
)
website_result_page.append(response.urljoin(next_page))
#create LIST into SET to remove duplicates then change SET back to LIST.
set(website_result_page)
list(website_result_page)
for brp in website_result_page:
return("printing brp: " + brp)
bs = BrickSetSpider()
print(bs.parse('200'))
返回:
<generator object BrickSetSpider.parse at 0x7f6f609c8f10>
解决方案
那只是使用对象的通用打印功能。十六进制值是对象的内存地址。由于对象是生成器,您可以先尝试将其转换为列表
print(list(bs.parse('200')))
推荐阅读
- linux - 启动 jupyter-pyspark 内核时生成损坏的文件
- javascript - Swiper Carousel 滚动条不接受对象作为参数
- python - 如何将多行合并为一行,同时从 Pandas 的某些列中添加特定值?
- c# - 在 C# 中按类型字段重新排列对象列表
- python - 他们是支持有向/加权图的 K-clique、流体社区和德国纽曼算法的版本吗?
- reactjs - 无服务器离线 <> React - 本地开发页面加载
- assembly - 当我在数据段中包含“最大编号是:$”作为 MSG 时,我没有得到结果
- syntax - 为什么将特征作为函数参数传递时需要`impl`?
- excel - 切换工作表时选择相同单元格的加载项
- python - python datetie.time 对象从 GPS 数据中设置时区