采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
请问这条代码有问题吗,我是3.7的python,打断点看前面可以提取出https开头的url,但是到这里过滤一下就为none了。
# all_urls = filter(lambda x: True if x.startswith("https") else False, all_urls)
你这里看起来对象不是none啊
解决了,返回的这是一个迭代对象,需要用转化成list。谢谢老师了哈。
好的,
1、执行filter之前:
2、到filter那个断点后:
all_urls
=
[
"https://baidu.com"
,
"http://www.baidu.com"
"https://www.taobao.com"
]
filter
(
lambda
x:
True
if
x.startswith(
"https"
)
else
False
, all_urls)
for
url
in
all_urls:
print
(url)
没问题
all_urls = response.xpath('//a/@href').extract() all_urls = [parse.urljoin(response.url, url) for url in all_urls] all_urls = filter(lambda x: True if x.startswith("https") else False, all_urls) 我是这样的,在filter以前一切都正常,我把截图放下头哈
登录后可查看更多问答,登录/注册
带你彻底掌握Scrapy,用Django+Elasticsearch搭建搜索引擎
4.9k 30
2.6k 18
1.3k 18
1.5k 15
3.0k 15
购课补贴联系客服咨询优惠详情
慕课网APP您的移动学习伙伴
扫描二维码关注慕课网微信公众号